字符常量
Posted luoxuw
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符常量相关的知识,希望对你有一定的参考价值。
#include<stdio.h> void main() char a = ‘a‘; //字符常量,一个字节 int num; // 为啥要声明变量,为了让编译器知道num 是一个变量,给他分配int的数据空间 4个字节 //char A = "A"; //错误,字符串常量表示字符常量,后面自动加 \0 2个字节 “初始化” : “char”与“char[2]”的间接级别不同 printf("%c",a); printf("\n%d",sizeof("")); // 输出1,字符串常量后面会自动加 \0 printf("\n%d\n", sizeof("A")); // 输出2,字符串常量后面会自动加 \0 //字符‘h‘有一下四种输出方式 putchar(‘h‘); //输出h putchar(104); //输出h 十进制 putchar(‘\150‘); //输出h 八进制 putchar(‘\x68‘); //输出h 16进制 /* ‘1‘ != 1 字符型变量在内存中占一个字节,由于存储的是字符的二进制ASCII码,与整型数据存储方式类似,字符型数据和整型数据可以相互运算。 注意,字符串常量不允许赋值给字符型变量,C语言也没有专门的字符串变量。要在内存中存取字符串,只能使用数组或指针 */ printf("========================"); //字符特例 char ch1 = ‘0‘; char ch2 = 0; char ch3 = ‘\0‘; printf("%d, %c\n", ch1, ch1); // ‘0‘ASCII字符对应的字符编号为48,输出48 ‘0’ printf("%d, %c\n", ch2, ch2);// 整数0对应ASCII字符为NULL,也就‘\0‘ 什么都不输出 输出0, printf("%d, %c\n", ch3, ch3);// ‘\0‘也就是ASCII字符为NULL,即‘\0‘ 什么都不输出 输出0, getchar();
以上是关于字符常量的主要内容,如果未能解决你的问题,请参考以下文章