C++ 整型数组赋值

假如在局部声明了一个整型数组,但没赋值就直接输出,那么输出的值是多少?

#include
using namespace std;
int main(){
	int a[10];
	for(int i=0;i<10;i++){
		cout<<a[i]<<endl;
	}
	return 0;
}

结果为
C++ 整型数组赋值_第1张图片
发现是一堆毫无意义的值,称为机器垃圾值。

假如仅仅赋值一部分:

#include
using namespace std;
int main(){
	int a[10]={5};
	for(int i=0;i<10;i++){
		cout<<a[i]<<endl;
	}
	return 0;
}

C++ 整型数组赋值_第2张图片
发现会自动将剩下的部分赋值为0。
因此假如想将数组全部赋值为0,只需要:

#include
using namespace std;
int main(){
	int a[10]={0};
	for(int i=0;i<10;i++){
		cout<<a[i]<<endl;
	}
	return 0;
}

如果声明了一个全局的整型数组,我们输出一下看看结果:

#include
using namespace std;
int a[10];
int main(){
	for(int i=0;i<10;i++){
		cout<<a[i]<<endl;
	}
	return 0;
}

C++ 整型数组赋值_第3张图片
全部是0。

可见声明全局数组后,即便不赋值,也会默认将所有值都赋值为0。
这就给我们一个思路,在编程时声明全局数组不需要初始化,默认数组元素全部为0。

你可能感兴趣的:(蓝桥杯,数据结构)