Object-C 基本数据类型

int型:
    如果整型值的第一位是0,则该数为8进制。050即是8进制的50(10进制40);
    如果整型值以0x开头,则该数为16进制。
    16进制数在输出显示时,用%0x表示,但使用后不带数值的前缀0x,如需表示16进制数的前缀,则需使用%#x。
 
float类型:
    要显示浮点数的值,可用NSLog转换字符%f;
    要使用科学计数法显示值,应使用NSLog格式字符%e。
    NSLog中使用%g,则允许NSLog确定使用常用浮点数法还是使用科学计数法来显示浮点值,这一决定取决于指数的值,如果该值小于-4或大于5,则使用%e,否则采用%f;
    16进制的浮点数包含前缀,后面紧跟一个或多个十进制或十六进制数字,再后面是p或P,最后是可以带符号的二进制指数;如:0x0.3p10
 
double类型:
    在Objective_c中,除非另有说明,否则编译器会将所有的浮点数看为double类型。要清楚的表示float类型,需要在数字尾部加一个f或F:12.5f
    NSLog的显示与float相同;
 
char类型:
    char类型可存储单个字符;@“”则表示NSString字符串对象。
    NSLog中表示时,使用%c.
 
限定词
 
long:
    如果直接把限定词放在int声明前,则声明的整型变量在某些计算机上具有扩展的值域,其精度由具体的计算机系统决定,在许多计算机上,int 与 long int具有相同的值域,且任何一个都能存储32位宽的整型值。
    此变量的值可通过在后面添加L或l来形成,但数字与L间不能有空格。
    NSLog中:
        整数:
                可使用%l+i/o/x来显示。%li 显示10进制 %lo显示8进制 %lx显示16进制。
        浮点数:
                显示long double的值,需要使用修饰符L,因此,%Lf用浮点计数法显示long double的值,而%Le则是使用科学计数法,%Lg则是由NSLog任选一个使用。
 
long long:
    扩展精度为至少具有64位宽的值域。
    NSLog中与long相近,只是需使用两个l来表示long long 的整数;
 
short:
    在int前,则内存空间的占用是常规int的一半,在任何情况下,空间数量不低于16位。
    NSLog显示则使用前缀%h+ i o x;
 
unsigned:    最终限定词
    当整型变量只用来存储正数的情况下使用最终限定符。可扩展整型变量的精度。
    在数值后放U或u,可产生unsigned int常量;在编写整型常量时,可将字母U和L组合使用,如:20000UL;则将20000看作是unsigned long;
    如果常量后不带字母U或L,且太大以至于不适合用普通大小的int表示,编译器则将它看作unsigned int值,如果太小以至于不适合使用unsigned int表示,则看作long int,如果仍然不适合long int,则视作unsigned long int;
 
    将变量声明为long int, short int 或 unsigned int类型时,int可以省略;
 
signed:
    明确表示此变量是有符号的。
原文地址:https://www.cnblogs.com/jz319/p/3251654.html