上文我们说了常量包括:
1. 数值型常量,
2. 字符型常量,
3. 符号常量,
我们知道了数值型常量包括整型常量,其中我们了解了八进制前缀加数字0、十进制和十六进制前缀加0X的表示方法,数值型常量还包括实型常量也就是浮点型常量,这个就是小数点的数值。下面我们就开始接触字符型常量。
字符型常量包括:
1、 字符常量
2、 字符串常量
字符常量是什么?
就是用单引号括起来的一个字符,这种形式就是字符常量,例如:
‘A’ ‘b’ ‘^’ ‘1’
![ed4f6020514bece6e3434461a630345f.png](https://i-blog.csdnimg.cn/blog_migrate/34fc6d0761510c8e604c2e2f00986696.jpeg)
这几个就是字符常量,记住单引号一定要把输入法调整为英文输入法,用编译器做个例子,用字符常量在控制台输出“Fine Day”,这里用到了putchar()函数,putchar函数是每次只能输出一个字符的意思,具体代码如下:
#include /*包含头文件*/
int main() /*主函数main*/
{
putchar('F'); /*输出一个字符*/
putchar('i'); /*输出一个字符*/
putchar('n'); /*输出一个字符*/
putchar('e'); /*输出一个字符*/
putchar(' '); /*输出一个字符*/
putchar('D'); /*输出一个字符*/
putchar('a'); /*输出一个字符*/
putchar('y'); /*输出一个字符*/
putchar(''); /*输出转义字符换行*/
return 0; /*程序结束*/
}
我们可以看代码,每一个输出的都是一个字符,这里单引号括住的只能是一个字符,这就是字符常量,输出的结果如下图:
![a1d15c5ddce94048e26798c313e2ce0b.png](https://i-blog.csdnimg.cn/blog_migrate/999268bb62a3862d41bfb23a7f074dc1.jpeg)
那么还有一种会遇到的错误的时候就是三个引号,比如:’3”这个样子,我们在编译器上试一下:
![01af68d4f65fe486fb181c98e8003ecd.png](https://i-blog.csdnimg.cn/blog_migrate/31d7b0c954cb76f13d4daa0d916abb2a.jpeg)
编译器报错了,所以输入的时候一定得注意!
字符串常量是什么呢?是用双引号括起来的若干字符的序列,例如:“126”、“ABC”、“吃饱了”等都是正确的字符串常量。那么如果字符串中一个字符都没有,那么这个字符串的长度为0就是空字符串,在C语言存储字符串常量的时候,系统会在字符串的末尾加上“0”作为字符串的结束标志,你不用在字符串的结尾加“0”,系统会自动去加的。
![9b596824f65b841ef38feb00a2c2e827.png](https://i-blog.csdnimg.cn/blog_migrate/9a156f62dbb725b8be3e1d18c720e58a.jpeg)
字符串的函数就是用printf(),我们用字符串常量输出,星空不问赶路人,岁月不负有心人的中英版本,代码如下:
#include /*包含头文件*/
int main() /*主函数main*/
{
printf("有点饿"); /*输出字符串,有点饿,这里的是转义字符,代表回车换行的意思,*/
printf("星空不问赶路人"); /*输出字符串*/
printf("The stars do not ask passers-by"); /*输出字符串*/
printf("岁月不负有心人"); /*输出字符串*/
printf("Time bears no burden"); /*输出字符串*/
return 0; /*程序结束*/
}
在控制台输出的结果如下图
![b9ee9c7d973eacce5ab594b78097095e.png](https://i-blog.csdnimg.cn/blog_migrate/4e1afb5530f0eef9cc0e4abb01ce480f.jpeg)
这里面的是回车换行的意思,没有它的结果就是:
![d4c0b96e8c7b10cb96b7b25c0d720e8a.png](https://i-blog.csdnimg.cn/blog_migrate/bff83b4fdc48a3dd92208a0969230d1f.jpeg)
所以,以后输出是没有换行的看一看是不是少了它。
那么符号常量是什么?
#include /*包含头文件*/
#define HEG 6 /*定义常量*/
float height(float chang, float wide); /*函数声明*/
int main() /*主函数main*/
{
float chang; /*定义浮点型变量,表示长*/
float wide; /*定义浮点型变量,表示宽*/
float volume; /*定义浮点型变量,表示体积*/
这里的HEG就是符号常量。