數組在我的代碼我有wchar_t數組:無法創建wchar_t的
wchar_t paths [6] = {L"C:\\Program Files\\SomeAppsSuiteFolder1", L"C:\\Program Files\\SomeAppsSuiteFolder2", L"C:\\Program Files (x86)\\SomeAppsSuiteFolder1", L"C:\\Program Files (x86)\\SomeAppsSuiteFolder2", L"C:\\SomeAppsSuiteFolder1", L"C:\\SomeAppsSuiteFolder2"};
後來我用數組中for
循環。問題是,對於此行,我得到以下錯誤:
error: too many initializers for 'wchar_t [6]'
error: initializer-string for array of chars is too long [-fpermissive]
更重要的是,在for
循環我有if
有條件像這樣的:
if(GetFileAttributesW(paths[i])!=INVALID_FILE_ATTRIBUTES) {...}
並再次,我在這裏得到一個錯誤:
error: invalid conversion from 'wchar_t' to 'LPCWSTR {aka const wchar_t*}' [-fpermissive]
奇怪的是,類似的代碼用於幾個月前正確編譯...有什麼問題嗎?
一個'wchar_t'僅僅是一個寬字符,而不是字符串。您試圖用(寬)字符串值初始化一個字符數組。 –