2010-06-03 83 views

回答

2

你有種回答你自己的問題。你想把var [0] [0,1,2,3]賦值給「ANS」嗎?那麼「ANS」是一個字符數組,ans [0,1,2,3](不要忘記空終止符)。所以你必須分別分配每一個。在C字符串中不是數據類型,它們只是其他變量的數組(確切地說是字符)。你可以做的是:

strcpy(var[0], "ANS"); 

這將爲你做逐字節的副本。

然而,strcpy有一些缺陷。首先,目標字符數組(在這種情況下爲var [0])必須足夠大以包含字符串。它不會檢查你的(它不能,實際上),所以如果你不小心,你可能會導致緩衝區溢出。此外,源必須爲NULL終止。

2

也許不是使用,

strncpy(var[0], "ANS", 3); 
1

當你寫

var[0][] = "ANS" 

編譯器試圖 「ANS」 分配給VAR [0] [0]這是隻有一個字符的地方。

因此,您應該使用strcpy函數。 strcpy將按字符複製char。