标签:四种 相互 十进制 pre 内存 tchar 不同 数据存储 class
#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(); }
标签:四种 相互 十进制 pre 内存 tchar 不同 数据存储 class
原文地址:https://www.cnblogs.com/luoxuw/p/11220335.html