亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標題: 有關(guān)extern “c”的問題 [打印本頁]

作者: iamqk    時間: 2006-10-13 16:33
標題: 有關(guān)extern “c”的問題
問題是這樣的

cfile.h 和 cfile.c兩個c語言寫的文件
cfile.c中引用了cfile.h
并且對cfile.h中的函數(shù)進行定義
main.cpp引用了cfile.h

問題如果我將cfile.c, 改名為cfile.cpp
會有什么后果??
即一些自動編譯的程序會不會用g++來對cfile.cpp進行編譯
如果此file.cpp文件能夠用g++通過編譯
和用gcc編譯的文件有什么不同?

自己搞了個簡單的例子,那種c/c++沒有什么區(qū)別的文件
通過gcc編譯和g++編譯cfile.cpp后都能夠鏈接成功
但是復(fù)雜點的就不清楚了

[ 本帖最后由 iamqk 于 2006-10-13 16:46 編輯 ]
作者: cugb_cat    時間: 2006-10-13 16:36
我試過一點點,好像是如果.cpp文件里有C++的東西就不能用gcc編譯通過了。
作者: flw2    時間: 2006-10-13 16:45
文件名沒有關(guān)系,-x(?)可以指定。
主要是編譯器是什么,它就認為源代碼是它能接受的那個類型
作者: iamqk    時間: 2006-10-13 16:48
標題: 回復(fù) 3樓 flw2 的帖子
如果文件同時可以用c和c++的編譯器進行編譯這樣最好用什么編譯器比較好?
應(yīng)該是c的吧?或者沒有什么區(qū)別?
作者: langue    時間: 2006-10-13 17:14
這個……你的程序是 c 寫的,就用 c 編譯器,是 c++ 寫的,就用 c++ 編譯器。
作者: 圓點坐標    時間: 2006-10-13 17:42
給個徹底的解釋;:http://www.yuanma.org/data/2006/0830/article_1438.htm
作者: lisan    時間: 2006-10-15 23:27
原帖由 cugb_cat 于 2006-10-13 16:36 發(fā)表
我試過一點點,好像是如果.cpp文件里有C++的東西就不能用gcc編譯通過了。


gcc 在編譯時,要檢查文件名的。對于.cpp文件,即使 gcc file.cpp,此時也是調(diào)用C++編譯器;對于.c文件,gcc調(diào)用c編譯器。
所以,C++文件,最好以.cpp or .cxx做后綴。
作者: flw2    時間: 2006-10-16 09:05
原帖由 iamqk 于 2006-10-13 16:48 發(fā)表
如果文件同時可以用c和c++的編譯器進行編譯這樣最好用什么編譯器比較好?
應(yīng)該是c的吧?或者沒有什么區(qū)別?

這樣的文件沒有意義的,比如
int main()
{
    /*nothing*/
}




歡迎光臨 Chinaunix (http://72891.cn/) Powered by Discuz! X3.2