上期讲到了数据类型,这一期讲一下各字符的打印方式,以及计算字符长度
char-字符类型(包括ascll码) 示例:
char ch ='A';
printf("%c\n", ch);
- char ch ='A':向内存申请一个字符空间,名字叫ch,在ch里放一个字符A
- printf("%c\n", ch):%c表示打印字符格式的数据(以字符的形式打印ch)
int-整型 示例:int age = 20;
printf("%d\n", age);
-
- int age = 20 :向内存申请一个字符空间,名字叫age,在age里放一个整型数据20(存放的是二进制)
- printf("%d\n", age):%d表示打印整型十进制数据(以十进制的形式打印age)
long-长整型 示例:long num = 100;
printf("%d\n", num);
-
- long num = 100:向内存申请一个字符空间,名字叫num,在num里放一个长整型数据100(存放的是二进制)
- printf("%d\n", num):%d表示打印整型十进制数据(以十进制的形式打印num)
float-单精度浮点数(浮点数指的是不能被具体确立的小数、分数、无理数等)
示例:float f = 4.8;
printf("%f\n", f);
-
- float f = 4.8:向内存申请一个字符空间,名字叫f,在f里放一个单精度浮点数数据4.8,运行结果是4.800000(存放的是二进制)
- printf("%f\n", f):%f以浮点数的形式输出
其他:
Char |
字符数据类型 |
1字节 |
Short |
短整型 |
2字节 |
Int |
整型 |
4字节 |
Long |
长整型 |
4/8字节[NV1] |
Long long [NV2] |
更长的整型 |
8字节 |
Float |
单精度浮点数(效率快) |
4字节 |
Double |
双精度浮点数(准确度高,范围大) |
8字节[NV3] |
[NV1]C语言中规定:sizeof(long)>=sizeof(int)
[NV2]三者的区别是占用空间的大小
[NV3]默认是双精度型,如果此时将其放入单精度型里,会报截错误,可在数字后面加一个f来纠正,告诉编译器我现在就是用的单精度型
输出:%d-打印整型 %c-打印字符 %s-打印字符串 %f-打印浮点数字-打小数 %lf-可专用于打印双精度浮点数 %p-以地址的形式的打印 %x-打印16 进制数字 ……
Sizeof-计算字符大小 示例:
- printf("%d\n", sizeof(char)):计算字符型数据在内存中占用的大小,以十进制的形式输出结果
- printf("%d\n", sizeof(int)):计算整型在内存中占用的大小,以十进制的形式输出结果
如有错误请指出