常量是固定值,在程序执行期间不会改变。这些固定的值,又叫做字面量。
常量可以是任何的基本数据类型,比如整数常量、浮点常量、字符常量,或字符串字面值,也有枚举常量。
常量就像是常规的变量,只不过常量的值在定义后不能进行修改。
整数常量
85 /* 十进制 /
0213 / 八进制 /
0x4b / 十六进制 /
30 / 整数 /
30u / 无符号整数 /
30l / 长整数 /
30ul / 无符号长整数 */
浮点常量
3.14159 /* 合法的 /
314159E-5L / 合法的 /
510E / 非法的:不完整的指数 /
210f / 非法的:没有小数或指数 /
.e55 / 非法的:缺少整数或分数 */
字符常量
字符常量是括在单引号中,例如,‘x’ 可以存储在 char 类型的简单变量中。
普通字符,如‘a’,‘b’,‘c’
转义字符,如‘\n’,‘\t’,‘\b
字符串常量
字符串字面值或常量是括在双引号 “” 中的。一个字符串包含类似于字符常量的字符:普通的字符、转义序列和通用的字符。
"hello, dear"
"hello, \
dear"
"hello, " "d" "ear"
定义常量
在 C 中,有两种简单的定义常量的方式:
使用 #define 预处理器。
使用 const 关键字。
#define 预处理器
#define identifier value
#include <stdio.h>
#define LENGTH 10
#define WIDTH 5
#define NEWLINE '\n'
int main()
{
int area;
area = LENGTH * WIDTH;
printf("value of area : %d", area);
printf("%c", NEWLINE);
return 0;
}
const 关键字
const type variable = value;
#include <stdio.h>
int main()
{
const int LENGTH = 10;
const int WIDTH = 5;
const char NEWLINE = '\n';
int area;
area = LENGTH * WIDTH;
printf("value of area : %d", area);
printf("%c", NEWLINE);
return 0;
}