在objective-c中关于变量的类型
int 与java一样+/-2147483647整数
unsigned int 大小一致但是只可以存储整数,所有是从0-4294967296之间
float +/-16777216之间的浮点数
double +/-2147483647之间的浮点数
long 根据芯片架构不同,大小分为32位到64位的整数
long long 64位整数
char 单个字符
BOOL 布尔值
NSInteger 在32位机器上与int相同,在64位上是294967296
NSUIntegetr 在32位机器上与unsigned int 相同
在objective-c中有如下几个修饰关键字
auto 该关键字不用些,为默认自动修饰关键字,在进入局部变量作用域时生效,出作用域后自动失效
static 该关键字类似于java常量,只会初始化一次并且内存只会分配一次;
const 该关键字是将一个变量改为只读属性,不许修改。若修改值会强制报错。
register 该关键字为经常使用的变量修饰词,该修饰词很少用到。会将变量存储到cup寄存器上。
extern 该修饰符表示所定义的函数或者声明的变量引用了应用程序另一个编译单元中定义或者分配的实际变量或者函数。
结构体关键字
struct 表示,有点类似于java中的实体类。实际上是一个存储多个变量的一个对象,由于结构体除了创建构成他的成员变量没有其他开销,因此在对性能比较敏感的地方,适合用结构体来完成。在struct中,当创建机构体后,还需要使用struct关键字来创建一个变量,再进行赋值相比之下比使用对象的方式简单,但还是很
struct demo {
int a=10;
NSString str = "hello world!";
}
typedef 关键字也是一种结构体,有点类似于java的声明便定义的感觉,当使用typedef来声明结构体的时候,可以及时使用。相比单独使用struct的时候比较方便。
typedef strcut{
int a;
int b;
}point;
当像以上的方式进行声明的时候,就可以直接使用point。
enum 枚举类型。该类型主要针对的特殊值的使用上。个人认为基本上不会使用。使用的语法与struct的使用方法一致。
指针类型 关于指针类型,声明一个指针类型需要使用*号,使用&符号可以获取一个变量的地址。每一个对象都是指针,但每一个指针不一定都是对象。