關(guān)于數(shù)組初始化的問(wèn)題
#include
main() { int scores7[10] = {[3] = 10,[5] = 15}; printf("scores7[3] = %i\n",scores7[3]); printf("scores7[4] = %i\n",scores7[5]); } 按道理上說(shuō)利用建立索引的方法進(jìn)行初始化了scores7【3】,和【5】,應(yīng)該就把整個(gè)數(shù)組初始化了吧,為什么不能輸出【4】,而且一直說(shuō)源文件未編譯,或者說(shuō)我怎么做,都編譯不了
2017-02-19
實(shí)際數(shù)組使用時(shí)都要memset清空,以防這塊內(nèi)存之前使用過(guò),有其他數(shù)據(jù)。沒(méi)有給初始值確實(shí)可能時(shí)隨機(jī)的。但是你已經(jīng)初始了幾個(gè)值,其他沒(méi)有的就會(huì)初始為0,全局和靜態(tài)數(shù)組就默認(rèn)初始為0
2017-02-19
沒(méi)有給個(gè)初值,一般不都是零嗎
2017-02-17
#include <stdio.h>
int main()
{
?? ?int scores7[10] = {[3] = 10,[5] = 15};
?? ?
?? ?printf("scores7[3] = %i\n",scores7[3]);
?? ?printf("scores7[5] = %i\n",scores7[5]);
?? ?printf("scores7[4] = %i\n",scores7[4]);
?? ?return 0;
}
scores7[3] = 10
scores7[5] = 15
scores7[4] = 0
這樣?是不是缺東西,沒(méi)有初始化的,初始化為0.