嘗試在C中初始化數組時出現奇怪的錯誤 - 任何人都知道爲什麼會發生這種情況?使用Typedefs在C中進行數組初始化
我有一個全局變量:
static my_type foo[6];
而在包含的頭文件,我有:
typedef uint32_t my_type[5];
我則在同一個文件中的全局變量的函數嘗試做:
foo = {{1, 2, 3, 4, 5}, {1, 2, 3, 4, 6}, {1, 2, 3, 4, 7}, {1, 2, 3, 4, 8}, {1, 2, 3, 4, 9}, {1, 2, 3, 4, 10}};
編譯器(GCC4)在'{'token'之前給出錯誤'expected expression'。
任何人都知道出了什麼問題,以及如何解決它?
乾杯!
他並說: 「在一個函數」 雖然。他試圖在聲明之外初始化一個變量的問題是什麼? – mjs
@mjs:發現,糾正了答案。 –
是的,基本上我有一個函數在文件中更低(我的全局變量在頂部),我試圖將數組設置爲我在函數中寫的內容。這當然有可能嗎?或者,如果沒有,是否有另一種做我想做的事情的方式? –