什么是常量
在程序运行时,值不能被改变的量,称之为常量。
常量的类型
- 整型常量:520,1314,123
- 实型常量:3.14,10.15,6.66
- 字符常量
- 普通字符:‘H’,‘i’,‘p’,‘s’
- 转义字符:‘\n’,‘\t’,‘\b’ - 字符串常量:“FishC”
- 符号常量:使用之前必须先定义
定义符号常量(宏定义)
- 格式:#define 标识符 常量
- 比如:
- #define NAME “Eminem”
- #define NAMEA “Andre 3000”
- #define RAPPER “说唱歌手”
标识符是什么
- 标识符只能是英文字母(A-Z,a-z)和数字(0-9)或者下划线组成。
- 例如:hiphop_from_1973 - 必须是字母或者下划线开头。
- 标识符区分大小写,不同大小写代表不同的标识符。
- 不能使用关键字来命名标识符。
字符串常量
- 字符:‘h’,‘i’,‘p’,‘h’,‘o’,‘p’
‘h’ | ‘i’ | ‘p’ | ‘h’ | ‘o’ | ‘p’ |
---|
编译器在编译的时候为每一个字符准备一个字节的空间来存放。
- 字符串:
- “Hello world”
‘H’ | ‘e’ | ‘l’ | ‘l’ | ‘o’ | ‘ ’ | ‘w’ | ‘o’ | ‘r’ | ‘l’ | ‘d’ | ‘\0’ |
---|
而当常量为字符串时,使用一个特殊的转义字符 ‘\0’ 来表示字符串的结束位置,当操作系统读取到这个转义字符的时候,就结束对字符串的读取,需要注意的是,转义字符也需要一个字节的内存。
代码
#include <stdio.h>
#include <stdlib.h>
#define NAME "Eminem"
#define NAMEA "Andre 3000"
#define RAPPER "说唱歌手"
int main()
{
printf("%s和%s都是%s\n",NAME,NAMEA,RAPPER);
return 0;
}
运行结果: