Re: [問題] 請教一個很菜的問題.有關於header 跟fu …
※ 引述《dangerousman (隱匿深山的駝客~~)》之銘言:
: 想請教各位大大一些有關於header跟fuction 實做的問題..
: 我寫了一些程式,發現他們都會共用到一些function.
: 於是我想說把他分割出來,讓主程式.C 檔乾淨些:)
: 於是我自定義一個.h檔,裡面實做我的function
實作應該要放在 .c 裡面
.h 只放宣告
請看一下 stdio.h 或 stdlib.h
它們裡面也不會放函式的實作
: 而function 會用到srand() 跟time()
: 照理來說應該會使用到stdlib.h 跟time.h
: 但是我自己定義的header file沒有引入,而主程式的.C檔也只有stdio.h而已
: 卻整個程式可以正常執行...百思不得其解中...
因為 C90 規定函式可以不經宣告即呼叫
這種情況下,函式的原型會被當作是接受任意參數並回傳 int
但這是非常不好的行為
因此 C99 標準中拿掉了這個規則
所有的函式都應先宣告才能呼叫
: 難道是可以從stdio.h 裡面 recursive 引入其他的header file嗎?
: 感覺好像也不太可能? 想請各位大大們解惑一下@@
: 另外剛剛稍微爬一下文,發現有人提到header file 實做 code 保密的問題..
: 我想請問一下大家,如果像類似情況大家會採取怎麼樣的方式完成呢?
: 感謝各位大大:)
我猜你的意思是不希望函式的實作被別人看到
實際上,因為 .h 中只會有宣告而不會有實作
所以並不需要擔心函式實作被看到
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.163.145.14
推
05/29 19:17, , 1F
05/29 19:17, 1F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章