作者wupojung (常駐程式)
看板C_and_CPP
標題Re: [問題] C語言---要怎麼寫標頭檔阿??
時間Sun Apr 5 19:00:58 2009
#ifndef _XXXX_H
#define _XXXX_H //一般全部大寫 (檔名)
#include <cstdlib> //如果有需要...當然也可以包括 math.h 等
class ABC{
public :
...........//省略;
}
int add(int x,int y){
return x+y;
};//範例
#endif //結束..
解釋第一行...
ifndef= if not define (如果沒有定義....這個檔)
避免已經include 了再被incluede 一次
變成重新定義...導致 錯誤....
使用的時候.....
就在要用之前
#incluede "XXX.h"
" " 與 < >差別是...
" "是跟此文件並列存在 假設現在檔叫main.cpp
main.cpp
XXX.h (同一個文件夾)
< >是IDE帶的。。 你可以理解成系統的
※ 引述《as123429 (老手嫩嫩)》之銘言:
: 最近在寫程式發現有幾個function很常使用到,想把這些函式編寫成內建函式
: 方便使用。
: 我查了版上的文章,有關於"標頭檔"的內容好像都是人家寫一個標頭檔出來,
: 遇到問題就PO上來請板上大大解決,但我想知道的是怎麼自己編寫標頭檔阿
: 他有什麼基本格式嗎?
: 只知道要存成.h ,然後include " .h"
: 但其內容有沒有標準格式= =?
: 還請各位大大幫忙~感激不盡^^
--
------------------------------
俗稱病毒
本生就是個毒.....
------------------------------
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.67.209.237
1F:推 Bencrie:標頭檔裡面不要寫實作 ... 04/05 19:11
2F:→ Bencrie:header裡面放的是宣告、函數原型,實作請放source。 04/05 19:13
3F:推 as123429:class不是c++的嗎??為什麼c語言可以使用阿?? 04/05 19:28
4F:推 as123429:想請教Bencrie大大,header.. source有什麼差別嗎?? 04/05 19:32
5F:→ as123429:一整個完全不了解= = 04/05 19:32
6F:推 QQ29:source你就想說寫在.c or .cpp的東西吧 04/05 19:34
7F:→ QQ29:你寫純c 那就用 struct吧 04/05 19:35
8F:推 as123429:OK...大致上有概念...我先試試看...THX 04/05 19:38
9F:→ weiyucsie:看到cstdlib... 這不是C++的嗎?XD 04/05 20:00
10F:推 aecho:推標頭檔不要實作~~ 04/05 20:47
11F:→ wupojung:問的人...是要 把function 放到.h檔裡面..事實上是可以德 04/06 00:47
12F:→ wupojung:interface 跟實作 分開寫 比較不適合新人... 04/06 00:48
13F:推 Bencrie:呃 ... 我是覺得早一點矯正錯誤的用法比較好 orz 04/06 12:25
14F:→ Bencrie:不然寫假分檔的越來越多 囧 04/06 12:27
15F:→ wupojung:也對啦... 不過有時候懶惰 都寫一起 release 才修改XD 04/06 12:45
16F:推 as123429:如同wupojung大大所言,把header file跟source file都寫 04/06 22:53
17F:→ as123429:寫在同一個檔案 xxx.h 也可以耶。會有什麼差異嗎? 04/06 22:54
18F:→ as123429:我覺得降子比較簡單耶^^ 04/06 22:54
19F:推 kvykn:樓上那樣寫容易有問題 像是重複include, fwd declaration 04/07 14:00