[問題] 關於標頭檔..

看板C_and_CPP (C/C++)作者 (sunlights)時間13年前 (2012/12/10 22:12), 編輯推噓2(205)
留言7則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Dev C++ 想問一下C的標頭檔是不是都有他的原始碼?? 因為我去看了標頭檔的說明..好像有.h的檔..就會有.c 不然就一定要有己編譯的.o或.so檔.. 例如..大家都會用到的stdio.h,我在Dev C++裡找不到原有的.c檔 跑到網路去查資料..發現有人給gcc的原始碼裡面就有stdio.c #include "libioP.h" #include "stdio.h" #undef stdin #undef stdout #undef stderr _IO_FILE *stdin = (FILE *) &_IO_2_1_stdin_; _IO_FILE *stdout = (FILE *) &_IO_2_1_stdout_; _IO_FILE *stderr = (FILE *) &_IO_2_1_stderr_; #undef _IO_stdin #undef _IO_stdout #undef _IO_stderr #ifdef _LIBC # define AL(name) AL2 (name, _IO_##name) # define AL2(name, al) \ extern __typeof (name) al __attribute__ ((alias (#name), \ visibility ("hidden"))) AL(stdin); AL(stdout); AL(stderr); #endif 然後我又找不到 libioP.h 的 libioP.c 也看不懂上面的__attribute__ 是什麼意思. 而且好像所有C的書都沒有提到標頭檔的事.. 是不是這些比較難或語法不是用C寫的嗎?? 還有gcc好像和MinGW又有差 我只知道gcc原來是用於unix-like的平台.. 而MinGW是為了幫助C語言可以跨到window平台產生的 不知道是怎麼編出來的呢??中間新寫的程式碼之類的是開放的嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.240.12.211

12/10 22:19, , 1F
stdin.h ?? stdio.h ?? stdint.h ??
12/10 22:19, 1F
抱歉打錯了...己訂正 ※ 編輯: sunlights 來自: 111.240.12.211 (12/10 22:20)

12/11 00:04, , 2F
找 glibc 的 source,應該是放 stdio-common
12/11 00:04, 2F

12/11 01:03, , 3F
要研究的話建議不要 k glibc, 先從 dietlibc 之類的會比較
12/11 01:03, 3F

12/11 01:04, , 4F
好入門, 等熟了再去 k glibc, 不然會有點吃力
12/11 01:04, 4F

12/11 01:47, , 5F
又到了推 程式設計師的自我修養 這本書的時候嗎?
12/11 01:47, 5F

12/11 01:57, , 6F
我好奇有什麼情況要 k C standard library implement ??
12/11 01:57, 6F

12/11 01:58, , 7F
研究 C++ library source 可以理解, C 的話就...
12/11 01:58, 7F
文章代碼(AID): #1GnUtgqb (C_and_CPP)
文章代碼(AID): #1GnUtgqb (C_and_CPP)