[英]Strange visual studio 2008 C++ compiler error
我有三行代碼:
//int pi;
activation->structSize = sizeof(rmsActivationT);
int pi; //program wont compile with this here
每次我取消注釋第二個int pi並注釋第一個int pi時,我都會收到此錯誤:語法錯誤:缺少';' 在“類型”之前。 當我取消注釋第一個int pi並注釋第二個int pi時,我的編譯器不再抱怨。 這個錯誤幾乎困擾了我整整一天,現在任何想法都很棒。
謝謝
Visual Studios 2008 Windows XP 32位
您是否正在將代碼編譯為C而不是C ++? C(Visual Studio不支持C99之前的版本)要求塊中的所有定義都在任何其他語句之前。
我有同樣的問題。
編譯錯誤為:
* main.cpp(325):錯誤C2601:'FLAG':本地函數定義不合法
main.cpp(323):此行包含一個尚未匹配的“ {”
main.cpp(326):致命錯誤C1075:在匹配main.cpp(323)左括號'{'之前找到文件結尾*
但是我的代碼沒有錯。 我計算了所有括號,並找到了匹配的數字。 另一個函數內部沒有任何函數。
我通過從源代碼中刪除所有“ //”注釋來解決它。 似乎原因是行格式錯誤,導致編譯器錯過換行符,因此注釋后的行也被視為注釋。
例如:
// This is a comment
This_is_a_line;
被視為:
// This is a comment This_is_a_line;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.