------- android培训、iOS培训、期待与您交流! ----------
一. 基本数据类型
1.Int类型:(默认64位Mac程序下)
1>int : 4个字节 %d或者%i
2>long int (可以直接写成long) : 8个字节 %ld
3>long long int(可以写成long long ) : 8个字节 %ld;
4>short int (可以写成short) : 2个字节 %d或者%i
5>unsigned int (可以写成unsigned) : 4个字节 %zd
6>signed int (默认情况下得int都是signed) : 4个 字节 %d或者%i
2.浮点型:
1> float :4个字节 %f
2> double: 8个字节 %f
(在输出时写成"%.kf",可以用k来限制double类型后面的小数位数)
3.字符型(char)
1>1个字节 %c或者%d
2>char保存在内存中的时它的ASCII码值
(用%d输出的时候输出的时对应的ASCII码值;用%c输出的时候输出的就是该字符)
二 、构造类型
1.数组
1>只能由同一种类型的数据组成
2>定义方式:
数据类型 数组名[元素个数];
例如:
2.结构体
1>可以由不同类型的数据组成
2>定义方式:
struct 类型名
3>struct 在定义类型的时候不会分配存储空间,只会在定义结构体变量的时候才真正分配存储空间
4>结构体的字节数必须是最大成员变量字节的倍数(并且要比所有成员变量相加的字节数之和要多)
三、指针类型
1.定义方式 :
定义类型 *变量名称;
2.区别定义时候的*和使用时候的*的区别
定义的时候的*只是指针类型的一个象征无实际意义
而使用时候的*例如*p =a;代表着访问指针变量p所指向的存储空间
3.所有类型的指针变量的字节数都是8;
四、枚举类型:
1.当一个变量只有几个允许固定值时,通常会采取枚举;
2.enum 变量名;
其中可以特定某个结果的取值,后面的取值依次递增,但是没有特定的时候默认首位为0;
例:
变量:
1.局部变量
1>定义:在函数代码块内部定义的变量(包括形参)
2>作用域:从定义变量那行开始,到代码块结束。
3>生命周期:从定义变量开始一直到代码块结束后,被收回。
4>无固定初始值。
2.全局变量:
1>定义:在函数外面定义的变量
2>作用域:从定义变量那行开始,一直到文件结束(能被后面所有函数共享)
3>生命周期:程序一启动开就会分配存储空间,程序退出时才会被销毁;
4>默认初始值为0;