2017-06-26 37 views
0
#include <stdio.h> 

int main() 

{ 

     printf("HelloWorld\n"); 

     return 0; 
} 

當我點擊編譯按鈕時,出現了一系列錯誤。但是,當我將「std.h」替換爲「stdlib.h」時, 沒有任何問題。VC++ 6.0上的Stdio.h

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(84) : error C2059: syntax error : ',' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(314) : error C2143: syntax error : missing '{' before '__cdecl' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(314) : error C2143: syntax error : missing ')' before '*' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(314) : error C2081: 'size_t' : name in formal parameter list illegal 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(314) : error C2081: 'size_t' : name in formal parameter list illegal 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(314) : error C2081: 'FILE' : name in formal parameter list illegal 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(314) : error C2143: syntax error : missing '{' before '*' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(314) : error C2059: syntax error : ')' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(314) : error C2059: syntax error : ';' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(320) : error C2143: syntax error : missing '{' before '__cdecl' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(320) : error C2143: syntax error : missing ')' before '*' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(320) : error C2081: 'size_t' : name in formal parameter list illegal 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(320) : error C2081: 'size_t' : name in formal parameter list illegal 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(320) : error C2081: 'FILE' : name in formal parameter list illegal 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(320) : error C2143: syntax error : missing '{' before '*' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(320) : error C2059: syntax error : ')' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(320) : error C2059: syntax error : ';' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(341) : error C2081: 'size_t' : name in formal parameter list illegal 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(342) : error C2059: syntax error : ',' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(342) : error C2143: syntax error : missing ')' before 'const' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(342) : error C2081: 'size_t' : name in formal parameter list illegal 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(342) : error C2143: syntax error : missing '{' before 'const' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(342) : error C2059: syntax error : ',' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(342) : error C2059: syntax error : ')' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(352) : error C2059: syntax error : ',' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(352) : error C2143: syntax error : missing ')' before 'const' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(352) : error C2081: 'size_t' : name in formal parameter list illegal 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(352) : error C2143: syntax error : missing '{' before 'const' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(352) : error C2059: syntax error : ',' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(352) : error C2059: syntax error : ')' 

d:\program files (x86)\vc++ 6.0\vc6.0\vc98\include\stdio.h(403) : fatal error C1003: error count exceeds 100; stopping compilation 
+1

對於你的下一個問題,記得用4個空格縮進代碼塊(這裏簡單的方法是選擇代碼並點擊'ctrl' +'k')。另外'<! - language:none - >'對於控制檯輸出轉儲很有用,請參閱我的最終編輯。抱歉干擾您的修改,這不是故意的。 –

+0

實際使用MSVC6.0真的有一個令人信服的理由嗎? –

+0

MSVC6.0在98年發佈(如目錄名稱所示)。它已經足夠大,可以在大多數轄區飲酒或投票了。 –

回答

1

您正試圖用C++編譯器編譯C代碼。

使用Visual Studio 6.0的一種方法是將源文件重命名爲.c,而不是.cpp擴展名。這使得編譯器進入了一種「C」模式。

+2

在很久以前還沒有使用過Visual C++ 6,但據我所知,這應該是一個非問題的頭文件。現在我懷疑一些預處理器的定義會搞砸頭文件的語法。 – Mario

+0

@Mario:我也無法驗證這一點,這全部來自內存,但這是我用來做這個編譯器來構建C代碼的方法。 – Bathsheba

+0

據我所知,所有捆綁的標準頭文件都有適當的可選'#extern「C」'括號。此外,如果這將是一些C/C++的衝突,它可能會顯示爲鏈接錯誤,而不是語法。 – Mario