2012-04-02 300 views
-1

我正在使用OPNET建模器,並且注入了代碼來改進我的場景。 當我編譯代碼時出現這條消息 語法錯誤:缺少';'之前'鍵入' 但它指的是沒有任何代碼行的轉換。語法錯誤:缺少';'在'type'之前

有什麼問題?

拜託,任何人都可以幫我嗎?

+0

看以前的代碼,甚至,包含頭文件 – 2012-04-02 05:45:11

+1

沒有,不是沒有一些代碼。該文件必須包含在某個地方。檢查最後編譯文件的編譯日誌並至少發佈。 – 2012-04-02 05:45:15

回答

11

該錯誤消息表明您缺少分號。最常見的地方出現這種情況是類似以下內容:

class Foo { 

    // ... 

} // <-- NEED SEMICOLON HERE 

int main() { 
    // ... 
} 

請注意,您class聲明可能會出現在一個頭文件,而不是.cpp文件。

+3

我聲稱可以推動你超過200k!如果你最終成功解密了這個問題,那麼也可以賺到錢。 – 2012-04-02 05:46:57

+0

@RobertMartin:歡呼:) – 2012-04-02 05:47:20

6

如果您聲明並同時分配一個變量,那麼對於一些嚴格的編譯器也會出現此錯誤。這可以通過改變foo_t my_var = old_var;和分裂的聲明來解決到

foo_t my_var; 
my_var = old_var; 

荒唐,一些編譯器甚至拋出一個錯誤,如果你不把你的變量聲明的代碼塊的頂部。[1]

[1] http://social.msdn.microsoft.com/forums/en-US/vclanguage/thread/974f1b6a-7bad-4be7-a93e-66e6b2f18842

+2

我剛剛在構建庫(libexif)時被c聲明事件捕獲。 – 2013-01-16 22:01:08

+0

我正在研究一些OpenCL主機代碼,並被這個語法錯誤難住 - 從來不會猜到它只是在頂部檢查變量聲明。謝謝你。 – 2013-06-13 04:35:35

相關問題