2 数据类型 [Objective-C基础教程]
Object-c 提供基本数据类型: int 、 float 、 double 、 char
Int Int Int Int :
八进制 整型第一位为 0 , NSLog 的格式符为: %o 显示的八进制不带前导 0
%#o 显示的八进制带前导 0
十六进制 以 0x 开头的整型, NSLog 的格式符为: %x 显示的十六进制不带前导 0x
%#x 显示的十六进制带前导 0x
若( %X 或 %#X ) 显示的十六进制用大写
Float Float Float Float :
NSLog 的格式符: %f
NSLog 的格式符: %e 科学计数法显示值
NSLog 的格式符: %g 指数的值小于 -4 大于 5 ,采用 %e ,否则采用 %f
十六进制的浮点常量包含前导 0x 或 0X, 后面紧跟一个或多个十进制或十六进制数字,再后是 p 或 P ,最 后
是可以带符号的二进制指数。例: 0x0.3p10 表示的值为 3/16* 10 2
注:若无特殊说明, Object-c 将所有的浮点常量看做 double 值,要显示 double 值可使用和 float
一样的格式符。
Char Char Char Char :
NSLog 的格式符: %c
long double 常量写成尾部带有字母 l 或者 L 的浮点常量。 1.234e+7L
注: id 类型可以通过类型转化符可以将一般的 id 类型的对象转换成特定的对象。
类型 NSLog 格式符
八进制 十六进制 十进制
long int %lo %lx %li
long long int %llo %llx %lli
long double %Lg %Le %Lf
short int %ho %hx %hi
unsigned short int %ho %hx %hu
unsigned int %o %x %u
unsigned long int %lo %lx %lu
unsigned long long int %llo %llx %llu
id %p
注: id 类型可以通过类型转化符可以将一般的 id 类型的对象转换成特定的对象。
_Bool 处理 Boolean (即 0 或 1 )
_Complex 处理复数
_Imaginary 处理抽象数字
键盘输入:
int number;
scanf("%i",&number);
实例变量的初始化值默认为 0
实例变量作用域的指令:
@protected 实例变量可被该类及任何子类中定义的方法直接访问(默认的情况)。
@private 实例变量可被定义在该类的方法直接访问,不能被子类定义的方法直接访问。
@public 实例变量可被该类中定义的方法直接访问,也可被其他类或模块中定义的方法访
问。使得其他方法或函数可以通过( -> )来访问实例变量(不推荐用)。
@package 对于 64 位图像,可以在实现该类的图像的任何地方访问这个实例变量。
在类中定义静态变量和 C 一样
voaltile 说明符和 const 正好相反,明确告诉编译器,指定类型变量的值会改变。 (I/O 端口 )
比如要将输出端口的地址存储在 outPort 的变量中。
volatile char *outPort ;
*outPort = 'O';
*outPort = 'N';
这样就可以避免编译器将第一个赋值语句从程序中删除
枚举数据类型、 typedef 语法以及数据类型的转换和 C 也是一样。