一、数据类型
1、整数类型
类型 | 字节数 |
---|---|
int(整形) | 2/4(2或4个字节) |
unsigned int(无符号整型) | 2/4 |
short(短整型) | 2 |
unsigned short(无符号短整型) | 2 |
long(长整型) | 4 |
unsigned long(无符号长整型) | 4 |
long long(双长型) | 4 |
unsigned long long(无符号双长型) | 4 |
无符号类型和一般类型的区别是一般类型是分正负的(存储的对应的二进制编码首位为“1”表示负数,为“0”表示正数),无符号类型无负号区分。
另外存储的存储的是对应二进制的码的补码,正数对应的补码为其本身(三码一致),负数对应的补码为其对应反码加一。
对无符号类型符负值会出错。
2、字符型变量
包括ASCII码字符集,存储时存储其对应ASCII码,储存于字符变量对应的储存空间中。
类型 | 字节数 |
---|---|
signed char | 1 |
unsigned char | 1 |
3、浮点型数据
浮点型数据是有小数点的实数。在C语言中,浮点型数据以指数形式存放在存储单元中。
类型 | 字节数 |
---|---|
float | 4 |
double | 8 |
long double | 8/16 |
在进行运算时,C语言会将float型数据转换成double型数据,然后在进行运算。
如 float a=3.14159;系统会报警告,因为系统将3.14159当double型数据处理,然后赋值给float型变量,系统认为可能会造成精度丢失。
float a=3.14159f;:
数据后加f表示该数据为float型数据,将其赋值给float型变量,系统则不会产生警告信息。
4、强制类型转换
(类型名)(表达式)
例:
(double)a;
(double)(a+b);
(double)14;
5、C运算符
(1)算术运算符(+ - * / % ++ – )
(2)关系运算符(< > == >= !=)
(3)逻辑运算符(! && ||)
(4)位运算符(<< >> ~ | ^ &)
(5)赋值运算符(=)
(6)条件运算符(?: )
(7)逗号运算符(,)
(8)指针运算符(*和&)
(9)求字节数运算符(sizeof)
(10)强制类型转换运算符((类型))
(11)成员运算符(. ->)
(12)下标运算符([])
(13)其他