數組不初始化的默認值

#include <iostream>
using namespace std;
int a[10];
char b[10];
int main()
{
	for (int i = 0; i < 10; i++)            //int全局數組不初始化默認爲0
	{
		cout << a[i];
	}
	cout << endl;

	int c[10];
	for (int i = 0; i < 10; i++)            //局部數組不初始化,是隨機值
	{
		cout << c[i];
	}
	cout << endl;

	int d[10] = { 0 };
	for (int i = 0; i < 10; i++)            //爲0,未被顯式初始化的元素默認爲0,字符數組則是'\0'
	{
		cout << d[i];
	}
	cout << endl;

	cout << b << endl;                     //按字符串方式輸出,輸出爲空,不是空格,可以看出未初始化的全局數組元素爲'\0'
	for (int i = 0; i < 10; i++)            //單個輸出全爲a
	{
		cout << b[i];
	}
	cout << endl;

	char e[10] = { 'b' };                  
	cout << e << endl;                     //按字符串方式輸出,輸出爲b,可見未被顯式初始化的元素爲'\0'
	for (int i = 0; i < 10; i++)           //char局部數組,單個元素輸出結果爲baaaaaaaaa
	{
		cout << e[i];
	}
	cout << endl;
	char f[10];                            //char局部數組不初始化,輸出爲燙燙燙燙燙
	for (int i = 0; i < 10; i++)         
	{
		cout << f[i];
	}
	cout << endl;
	return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章