c语言仅有四种基本类型
- char 字符型,占用一个字节的长度,可以存放一个字符
- int 整形,用来装整数,长度由所在的机器而定,通常占4字节
- float 单精度浮点型
- double 双精度浮点型
施加在基本类型上的限定符 - short int a;
- long int a;
short限定符尽可能是int变短,long尽可能的使int变长
short和int类型不小于16位,int型可以是16位和32位,long类型不小于32位,具体由所在机器而定
signed与unsigned可用俩限定char型和所有整形(包括被short或long限定过的整形)。
signed整形等价于整形
unsigned整形使得原有整形长度不变,符号位变成了数据位,仅能表示0和正数
signed char强制char可以存储有符号整数,unsigned char强制char可以存储无符号整数,char不加任何限定,则是否有符号根据所在机器而定
#include#include using namespace std; int main() { short int x =-178; short int y = x<<1; cout< (x) < (y) < bitset<转换后的为数>(被转换为二进制的数)
类型转换指针 数组
- 自动转换
和java中的自动转换不同,当表达式中同时出现short和char类型的时候,会向int型转换,如果同时出现int和unsigned int,都会向unsigned int靠拢,如果出现float则float靠拢,如果出现long则long,如果long和float同时出现则向double靠拢。- 强制转换
(类型名)表达式
(float) a;//将变量a转换为float类型
(int) (c+b);//把表达式c+b的结果转换为int型
注意:类型转换只体现在结果上,并不会改变被转换变量的类型int *p=a;//p指针保存的是数组a第一个元素的地址(p+i就是下一个元素的地址值)
结构体
- typedef



