簡體   English   中英

包含“ char []”的語法錯誤編譯頭

[英]Syntax error compiling header containing “char[]”

我正在嘗試使用SDL_Mixer 1.2構建Visual C ++ 2008 DLL:

http://www.libsdl.org/projects/SDL_mixer/

據說這是為Visual C ++構建的,但是當我包含SDL_mixer.h時,出現錯誤C2143 :“ 語法錯誤:缺少';' 在“ [”之前

問題行是:

const char [] MIX_EFFECTSMAXSPEED =“ MIX_EFFECTSMAXSPEED”;

這是因為使用了動態數組構造“ char []”而不是“ char *”嗎?

文件中的所有表達式都由“ extern "C" { “包裹。

在變量名稱后移動方括號

const char MIX_EFFECTSMAXSPEED[] = "MIX_EFFECTSMAXSPEED";

你要:

const char MIX_EFFECTSMAXSPEED[] = "MIX_EFFECTSMAXSPEED";

請注意,這里沒有“動態數組構造”-您有一個用字符串文字初始化的char數組-所有編譯時都是如此。

我的錯。 盡管這里的答案對於C構造是正確的,但實際的問題是我包括了“ D”語言文件而不是C版本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM