2014-11-06 65 views
0

這是我的代碼如何用一行初始化C中的數組?

int numLeft[5]; 
void init() 
{ 
    numLeft = {5,4,3,3,2}; 
} 

當我試圖編譯這段代碼,我得到這個錯誤:「錯誤:預期表達式之前‘{’令牌 我知道在java中這樣的事情可以工作

int[] numLeft; 
void init() { 
     numLeft = {5,4,3,3,2}; 
} 

有我丟失的東西在我的C代碼?快速谷歌搜索並沒有幫助。

+1

[duplicateated?](http://stackoverflow.com/questions/3137671/declaring-and-initializing-arrays-in-c)使用'memcpy'。 – 2014-11-06 07:42:09

回答

0

INT numleft [5] = {5,4,3,3,2}是去的方式。這裏numleft是引用數組的變量,但要訪問每個數組,您必須將其引用爲numleft [0],numleft [1],同樣。

+0

我需要將numLeft聲明爲全局變量並在函數中初始化它 – committedandroider 2014-11-06 07:43:06

1

int numLeft[5] = {5,4,3,3,2}; wiil做的工作


編輯:

如果你需要初始化全局陣列每個時,需要使用memcpy(),如其他duplicate answers建議。

+0

我需要numLeft作爲全局變量,並且每次在函數中初始化它 – committedandroider 2014-11-06 07:41:32