C++变量的声明、定义、数组初始化

声明和定义的关系:
声明规定了变量的类型和名字,定义申请存储空间。
想声明而非定义一个变量,添加extern关键字,extern声明变量并初始化时即变成定义。
定义一次,声明可多次。可参考博客extern关键字

#include<iostream>
#define GET_ARRAY_LEN(arr,row,column) {column = sizeof(arr[0])/sizeof(arr[0][0]);\
row = sizeof(arr)/sizeof(arr[0]);}
using namespace std;

int arr[5];//默认初始化全为0;
int numGlobal;//默认初始化全为0;
//全局和静态数组初始化为0,局部变量和数组不初始化,输出为地址。

void AlgorithmGossip(int *arr){};

int main()
{
	int arrTwo[5] = {1};
	//当初始化时指定的元素个数小于数组,剩下的元素都被初始化为0,即1,0,0,0,0
	
	int numLocal;
	int *point = arr;
	AlgorithmGossip(arr);
	cout<<numGlobal<<endl;//输出0
	cout<<numLocal<<endl;//输出-858993460
	
	for (int i = 1; i < 5;  ++i)	{
			cout<<*point<<" ";
			//arr++;error:数组地址,这个是常量,不能赋值。
			point++;
	}
	
	return 0;
}

猜你喜欢

转载自blog.csdn.net/qq_29611345/article/details/82694534
今日推荐