C语言有四种常量,分别是
1.自身就是常量,字面意义的常量;
2.由const定义的常变量;
3.由#define 定义的标识符常量;
4.枚举常量。
以下为每种常量的举例说明:
1.字面常量,
例如
int main()
{
3.14;
1;//数字常量
'a';//字符常量
'abcd';//字符串常量
//以上常量可以直接输出的
printf("3.14,1,'a','abcd'");
return 0;
}
2.由const定义的常变量本质上依旧为变量,但其具有不可变的属性 ;
首先来看变量是什么样的
int main()
{
int n = 1;
printf("n的第一次输出%d\n", n);
n = 2;
printf("n的第二次输出%d\n", n);
return 0;
}
这里n的值是可以随着你后续的赋值而产生改变的,但当你用const定义之后,其值不可再次被赋值,如果再次被赋值就会被报错,同样因为是变量也不可用于数组的定义;
3.由#define 定义的标识符常量,可视为一般的字面常量
#define MAX 3
int main()
{
int n = MAX;
printf("n = %d\n", n);
int arr[MAX] = {1,2,3};
printf("MAX = %d\n",MAX);
int i = 0;
for (i; i < MAX; i++)
{
printf("arr[%d] = %d\n",i,arr[i]);
}
return 0;
}
4.枚举常量
将事物枚举出来,类似于结构体和数组,要先进行声明常量,在不具体赋值的情况下,枚举的常量输出数是从0开始,依次+1。
enum Sex
{
//这种枚举类型的变量的未来可能取值
MALE = 3,
FEMALE,
SECRET
};
int main()
{
enum Sex s = MALE;
printf("%d\n", MALE);
printf("%d\n", FEMALE);
printf("%d\n", SECRET);
return 0;
}