情況1:無{}
如果沒有初始化函式中定義的陣列,則其元素將是不確定的,這意味著元素的值為以前駐留在該記憶體單元中的值。
int
char 【-52可以理解為亂碼】#includeusing namespace std;
int main()
system("pause");
return 0;
}//輸出:-858993460 2 -858993460 -858993460 -858993460
情況2: 有{}#includeusing namespace std;
int main()
system("pause");
return 0;
}//輸出:-52 50 -52 -52 -52
int
char#includeusing namespace std;
int main()
; a[1] = 2;
for (int i : a)
system("pause");
return 0;
}//輸出: 0 2 0 0 0
#includeusing namespace std;
int main()
; a[1] = '2';
for (char i : a)
沒有壞處,防止亂碼
int a[4];
int b[4] = ;
cout << sizeof a << '\n' 《試了一下記憶體空間,其實在宣告時不管有沒有初始化都已經分配記憶體空間了,結果都是16.
c 陣列賦值
c 中陣列複製有多種方法 陣列間的複製,int pins int alias pins 這裡出了錯誤,也是錯誤的根源,以上 並沒有出錯,但是根本不是複製,因為pins和alias都是引用,存在於堆疊中,而資料9,3,4,3是乙個int物件存在於堆中,int alias pins 只不過是建立另乙個引...
c語言陣列賦值
最近在學c語言,把給陣列賦值的方式總結一下 1 利用malloc include include void main int a a int malloc 2 sizeof int int i 0 int j 1 a 0 i a 1 j int times for times 0 times 2 直...
C字元陣列賦值
舉例如下 char a 10 1 定義的時候直接用字串賦值 char a 10 hello 注意 不能先定義再給它賦值,如 char a 10 a 10 hello 這樣是錯誤的!2 對陣列中字元逐個賦值 char a 10 3 利用strcpy char a 10 strcpy a,hello 易...