Chapter 2 : 数据类型

1. Obj-C提供的基本数据类型: int、float、double、 char

-> int : 

十进制   NSLog格式符为:%i, %d
八进制 整型第一位为0

NSLog的格式符为:%o 显示的八进制不带前导0

         %#o 显示的八进制带前导0 

十六进制 以0x开头的整型

NSLog的格式符为: %x 显示的十六进制不带前导0x

                           %#x 显示的十六进制带前导0x

PS : 若%X或%#X, 显示的十六进制用大写

 

 

 

 

 

 

 

-> float :

    NSLog的格式符: %f

    NSLog的格式符: %e    科学计数法显示值

    NSLog的格式符: %g    指数的值小于-4大于5,采用%e, 否则采用%f

    NSLog的格式符:

-> double :  若无特殊说明,Obj-C将所有的浮点常量看做double值,要显示double值可使用和float一样的格式符。

    long double常量写成尾部带有字母l或者L的浮点常量。例:1.234e+7L

-> char : 

    NSLog的格式符: %c

扩展类型:

PS : id类型可通过类型转化符将一般的id类型的对象转换成特定的对象。

2. 关于实例变量的补充:

-> 实例变量作用域的指令:

    @protected 实例变量可被该类及任何子类中定义的方法直接访问(默认情况下)。

    @private     实例变量可被定义在该类的方法直接访问,不能被子类定义的方法直接访问。

    @public      实例变量可被该类中定义的方法直接说,也可被其它类或模块中定义的方法访问。使得其他方法或函数可以通过(->)来访问实例变量(不推荐用)   

    @package   对于 64 位图像,可以在实现该类的图像的任何地方访问这个实例变量。(注:这个没懂)    

3. 静态变量:

    volatile说明符和const正好相反,明确告诉compiler, 指定类型变量的值会改变。

示例:

volatile char *outPort;
*outPort = 'O';
*outPort = 'N';

这样可以避免compiler将第一个赋值语句程序中删除。

4. enum, typedef语法以及数据类型的转换和C也是一样的。

posted on 2012-09-25 11:59  BankFish  阅读(300)  评论(0编辑  收藏  举报