1.C语言中的数据类型
1).基本类型(整形数、浮点数)
2).构造类(数组、结构体、联合体、枚举)
3).指针类型
4).void类型。
typeof(X)表示X的数据类型,整数默认int类型,浮点数默认double类型
数组类型大多可以相互转换。不同类型相加减向高精度的转换。
1.基本类型(整形数、浮点数)
1)整数类型:int,short,long,double,float,char
1个字节=1byte = 8bit
char/unsigned char 占1个字节 (字符型) -保存字符对应的ASCII值
short/unsigned short 占2个字节 (存储形式在后面)
int/unsigned int 占4个字节
long/unsigned long 占4个字节 long long占8个字节(使用sizeof可以计算占字节数)
signed(默认) 表示有符号 储存符号位为最高位。1为正数,0为负数
unsigned 表示无符号 所有字节都为 数值位
2)浮点数:
float : 单精度浮点数 4字节
double: 双精度浮点数 8字节
long double : 长双精度浮点数 16字节
2.构造类型:自己构造出来的类型
数组 :一维数组、二维数组,
int a[10]; 可以存放10个int类型的数组
数组的下表为0~9,a[10]越界,
结构体:类似于定义一个对象 占的大小为结构体中所有属性的和(注意补倍数 char+int =1+4+3=8位)
struct student
{
char name[]; 字符串类型
int age;
};
联合体:共用一个内存空间 占用大小为最大的数据类型
union a
{
int a;
char b;
};
枚举:预先定义好,有点类似于#define
enum a
{
one = 1, //若未赋值默认为0,后面一次累加。
twe = 2,
};
3.指针类型 在32位操作系统中指针占4个字节,在64位中占8个字节。
int