const在C和C++中定义数组时的不同

#include<stdio.h>

int main() {
	int arr1[10];//C与C++中都可以

	int sz1 = 10;
	int arr2[sz1];//C与C++中都不可以
	
	const int sz2 = 10;
	int arr3[sz2];//C中不可以,C++中可以	

	system("pause");
	return 0;
}

原因:

  • 数组定义的规定是维度必须是 常量
  • 在C语言中,const 修饰的标识符具有常属性,不能被直接修改,但本质依然是一个变量
  • 在C++中,const修饰的标识符就是常量。

【相关知识点】

注意在C中还有define定义的标识符常量

#include<stdio.h>
#define sz 10

int main() {
	int arr4[sz];//C与C++中都可以

	system("pause");
	return 0;
}
全部评论

相关推荐

10-15 10:23
门头沟学院 Java
牛可乐的头像真牛:赶紧举报,这公司绝对是诈骗的,等你签约后工作一两个月后根据合同漏洞把你开除,并且要求你赔偿3w培训费,996是为了提前筛选心甘情愿签下合同容易受骗的群体,纯粹面向校招生精心设计的骗局
你见过哪些工贼行为
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务