day2 C语言数据类型知识分享
一、整体认识二、内置类型1.字符型char用char ch创建字符变量2.整型int用int num创建整型变量3.浮点型float/double用float num1/double num2创建浮点型变量其中双精度浮点型double更为精确占用字节是单精度浮点型float的两倍4.布尔类型_Bool(bool)用_Bool testtrue/false 用来表示真假0为假非0为真三、类型修饰符修饰符分为long/short和signed/unsigned1.修饰整型(1表示长度short[int]、long[int]、long long[int]其中中括号内可以省略系统默认(2表示符号默认intsigned int必须写unsigned int2.修饰浮点型long double ( 不可省略long)补充计算数据长度1.sizeof操作符结果是size_t类型打印时应该用%zu的占位符使用方法为、sizeof(type)eg:intmain(){printf(%zu,sizeof(char));printf(%zu,sizeof(short));printf(%zu,sizeof(int));printf(%zu,sizeof(long));printf(%zu,sizeof(longlong));printf(%zu,sizeof(float));printf(%zu,sizeof(double));printf(%zu,sizeof(longdouble));return0;}输出结果是124484882.strlen操作符打印时应该用%d使用方法为strlen(字符串“可以计算出某个字符串的字节长度intmain(){printf(%d,strlen(jack));return0;}输出结果是4每个字母是一个字节jack自然就是4了另外sizeof也可以算字符串长度比如intmain(){printf(%d,sizeof(jack));return0;}但这里输出结果是5为什么呢原来每一个字符串后都有一个表示结束的字符\0strlen只统计有效文字不包含\0所以是4但sizeof统计数组全部占用空间因此会在4的基础上加1ok问题来了什么是\0呢这就要说到转义字符了四、转义字符1.前提ASCII码表这是标准的用以给英文字母、数字、符号分配唯一数字编号的表让计算机读懂文字。我们需要记住的有A65a97相差32且后面字母依次加1数字字符0~9为48~570~31不可打印2.表示前三十二个不可打印字符的方法何为转义例如n本为一个简简单单的字母但若前面加一个其意义就被转变为换行这便是转义的来源。字符转义序列数字转义序列具体效果大家可以自己尝试很有趣五、一个小练习请问下列代码打印结果是多少呢欢迎留言哦intmain(){printf(%d,sizeof(c:\tset\121));return0;}