导图社区 C语言 语法基础 基本数据类型
C语言 语法基础 基本数据类型思维导图,主要包含标识符、 算术运算符、sizeof运算符、 数据类型转换等。
编辑于2024-03-21 00:00:48基本数据类型
标识符
理解:自己定义的符号,与关键词区别开来
要求
由字母,数字,下划线组成
第一个字符只能由字母和下划线
不能用关键词
对大小写敏感
数据类型
常量
作用
相当于未知数x
语法格式
宏定义: #define 标识符 常量
eg: #define PI 3.14 (没有等于号和分号)(在main函数之前)
变量
储存数据的容器
由数据类型,变量名,变量值三个属性确定
eg:int num,count;
整型数据 (数字是字节数)
int可省略
有符号
短整型 short int 2
基本 int 2
长整型 long int 4
无符号
unsigned short int 2
unsigned int 2
unsigned long int4
实型数据(有小数点的数)(再后面的数是有效数字,包括小数点左边)
单精度 float 4 6~7
双精度 double 8 15~16
长双精度 long double 16 17~18
字符型数据
char
字符常量
用单引号 eg:‘a’
有一些符号无法直接写出来,所以发明了转义字符
转义字符常量 数字是ascii码
\0 空格 0
\a 响铃 7
\b 退格 8
\t 制表位 退四格 有覆盖操作 9
\n 换行 10
\v垂直制表 11
\f 换页 12
\r回车 13
\” 双引号 34
\‘单引号 39
\\反斜杠 92
\ddd 八进制数字对应asii码对应的字符
\xhh 十六进制数字对应asii码对应的字符 eg:\x20
字符变量
eg:char c1;
char类型存放的是ascii码的整数,字节为1 eg:char ’A'实际储存的是65,所以可以看作字符也可以是整数
字符串常量
需要\0在字符串尾部作为结束标记,所以字节要加一
算术运算符
+ 正号 -减号 都是右结合,是标示数字是正数负数
求余运算符%
称为模运算
提取个位数方法 eg:78%10=8
参与模运算的两个整数符号不同,结果与被除数符号相同
自增自减运算符
i++ 先使用后自增
++i先自增后使用
复合赋值运算符
eg:x + =y ➡️x=x+y
sizeof运算符
作用:计算字节数
返回整形数据
格式:eg:printf(“int类型占用%d个字节\n”,sizeof(int));
数据类型转换
自动数据类型转换
原则:一般向高精度转换
eg
2.0/2➡️结果为1.0
char ‘a’,short ‘s’ a/s结果为整型数据
强制类型转换
格式:eg:若a和b类型为double,进行(int)(a+b)➡️想把a+b的浮点类型结果算出来,再转化为int类型
位运算符
去反运算~
单目 把二进制位数取反
按位与运算
双目 同是一结果取一,否则取零
按位或运算
双目 只要有一个一就取一,其他位不变
按位异运算
双目 不同时为一,相同时为零
左移运算<<
将二进制数字左移,eg:00000011<<4=00110000
实际是乘以2的n次方
右移运算>>
将二进制数字右移
实际是除以2的n次方