[問題] 關於程式流程的一些疑惑

看板C_and_CPP (C/C++)作者 (耐綸)時間11年前 (2015/05/15 15:10), 編輯推噓0(0013)
留言13則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) C語言、Ubuntu10.04 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) Igh EtherCAT master 問題(Question): 甲. main.c中的 ecrt_master_receive(master)這個函數呼叫照理說應該跳到ecrt.h 乙. 可是使用GDB的實際執行它卻是跳到ethercat-1.5.2\lib\master.c 中執行 丙. 照我的理解真正實作接收封包的部分應該是在ethercat-1.5.2\master\master.c 中 的程式碼 所以我搞不清楚實際上的運作方式,照我對C語言的理解它應該是執行 甲 這個結果 可是使用GDB卻是執行 乙 這個結果 但是我對於整個行為的協定理解應該是要跳到 丙 才是 這讓我一團混亂 程式碼(Code):(請善用置底文網頁, 記得排版) https://hackpad.com/EtnerCAT-Igh-master-niX7PUPCNrW -- 「不需要讓青少年有判斷力和批判力。只要給他們汽車、摩托車、美麗的明星、刺激的音 樂、流行的服飾,以及對同伴的競爭意識就行了。剝奪青少年的思考力,根植他們服從指 導者命令的服從心才是上策。讓他們對批判國家、社會和指導者保持著一種動物般原始的 憎惡。讓他們深信那是少數派和異端者的罪惡。讓他們都有同樣的想法。讓他們認為想法 和大家不同的人就是國家的敵人……」 by 阿道夫·希特勒 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.123.102.107 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1431673847.A.FAF.html

05/15 15:19, , 1F
會期望程式在 .h 裡面執行, 應該是不知道 .h 的作用 ?
05/15 15:19, 1F

05/15 15:19, , 2F
如果真的跑到 .h 裡面, 那他的執行的內容是甚麼 ?
05/15 15:19, 2F

05/15 15:29, , 3F
至於乙跟丙的話, 應該是因為他類似有兩個程式在跑, 你用的
05/15 15:29, 3F

05/15 15:30, , 4F
在 user space 之類的, 只是把東西接出來
05/15 15:30, 4F

05/15 15:32, , 5F
我不知道這在幹嗎的. 不過我猜你想追的是 kernel module 類
05/15 15:32, 5F

05/15 15:33, , 6F
的. (水晶球快告訴我吧~)
05/15 15:33, 6F

05/15 15:35, , 7F
因為想實際知道接受封包的行為所以使用gdb
05/15 15:35, 7F

05/15 15:36, , 8F
這樣的情況底下我是否就無法完整的trace它的行為了
05/15 15:36, 8F

05/15 15:38, , 9F
當然不是, 你應該只是找錯 gdb 的對象了.
05/15 15:38, 9F

05/15 15:53, , 10F
所以是我設定錯中斷點嗎?但是行為應該在那裏是接收
05/15 15:53, 10F

05/16 11:59, , 11F
我又想推坑組合語言了
05/16 11:59, 11F

05/16 13:57, , 12F
XD
05/16 13:57, 12F

05/16 13:58, , 13F
水晶球啊水晶球,我要不要推組合語言呢?
05/16 13:58, 13F
文章代碼(AID): #1LLPlt-l (C_and_CPP)
文章代碼(AID): #1LLPlt-l (C_and_CPP)