“C语言中的常变量”的版本间的差异

来自姬鸿昌的知识库
跳到导航 跳到搜索
第31行: 第31行:
 
[[文件:C语言中的常变量3.png|无|缩略图|800x800像素]]
 
[[文件:C语言中的常变量3.png|无|缩略图|800x800像素]]
 
像上面“int const x = 0;”。
 
像上面“int const x = 0;”。
 +
 +
一般写成“int const x = 0;”这种 const 在类型声明后面的形式。<syntaxhighlight lang="c">
 +
#include<stdio.h>
 +
 +
const int g_max = 10; //全局常变量
 +
 +
int main()
 +
{
 +
int const x = 0; //局部常变量
 +
const int sum = 20; //局部常变量
 +
return 0;
 +
}
 +
</syntaxhighlight>

2022年10月29日 (六) 01:45的版本

https://www.bilibili.com/video/BV1vR4y1H7MY/?p=11

用 const 关键字修饰的变量,称为常变量。// c const // c++ const

变量:可读可写;

常量:只可读不可写;

常变量:?

示例:

#include<stdio.h>

int g_max = 10; //全局变量

int main()
{
	int x = 0;
	int sum = 20;
	g_max = 100; //普通全局变量可以被赋值
	printf("g_max = %d \n", g_max);
	return 0;
}
g_max = 100

也就是说普通全局变量可以被修改,但加入 const 修饰全局变量以后则不能对全局变量再进行赋值修改,否则发生编译报错:

C语言中的常变量1.png

对局部变量 sum 加了 const 修饰之后,也是一样:

C语言中的常变量2.png

原因就是加了 const 修饰之后,就由变量变成了常变量,可以读取值,但不能修改值。

const 也可以加到类型声明后面:

C语言中的常变量3.png

像上面“int const x = 0;”。

一般写成“int const x = 0;”这种 const 在类型声明后面的形式。

#include<stdio.h>

const int g_max = 10; //全局常变量

int main()
{
	int const x = 0; //局部常变量
	const int sum = 20; //局部常变量
	return 0;
}