2012-12-26 68 views
3

我發現this link,但這不是我的問題。錯誤C2143:語法錯誤:缺少')'之前'&'

我在聲明中發現錯誤。

這裏是我的聲明:

typedef struct 
{ 
    int buffer[10]; 
} Special_t; 

void Special_Reset(Special_t &context); 

這是一個.c文件。我使用Visual Studio 2010爲Windows編譯它。這是一個跨平臺項目的一部分。這個確切的代碼使用嵌入式C編譯器工作正常。

我也嘗試使用此命令行構建:

cl main.c /I. /TC 

的/ TC表示「強制C編譯器」,而不是C++編譯器。它也沒有工作。

+3

那麼''&'在這個上下文中的C++意味着一個引用。 C沒有參考。 – netcoder

回答

4

使用&通過引用傳遞僅在C++中有效。嘗試傳遞指針或切換到C++編譯器。

+0

啊哈。 :-)嵌入式編譯器具有混合語法的混合C/C++編譯器。允許通過參考。我忘了。謝謝! – 010110110101

相關問題