my学习OC--变量 数据类型

本文详细介绍了Objective-C中的数据类型,包括基本类型如字符、整数、浮点数等,以及派生类型如指针、数组等。同时,文中还讨论了类型转换的相关规则。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


数据类型

在Objective-C编程语言中,数据类型是指一个广泛的系统,用于不同类型的声明变量或函数。其类型可分类如表2.1所示:

类型类型说明
基本类型称为算术类型:字符类型、整数类型、浮点类型(单精度型/双精度型)
枚举类型也是算术类型:被用来定义变量只能被分配在整个程序中的若干离散的整数值
void类型类型说明符void表示没有可用的值
派生类型指针类型、数组类型、结构类型、联合类型、函数类型

在 Objective-C 中,提供的基本数据类型(算术类型)有char、int、float、double四种。

此外,Objective-C还提供了几种限定词short、signed、unsigned、long及long long。

基本数据类型可以与限定词配合使用,如果直接把限定词long放在int声明之前,那么声明的整型变量在某些计算机上具有扩展的值域,而且此变量的具体范围也是由具体的计算机系统决定的。

表2.2总结了基本数据类型和限定词:

类型实例NSLog字符
char'a'、'\n'%c
short int%hi、%hx、%ho
unsigned short int%hu、%hx、%ho
int12、-97、0xFFE0、0177%i、%x、%o
unsigned int12u、100U、0xFFu%u、%x、%o
long int12l、-200L、0xffffL%li、%lx、%lo
unsigned long int12ul、100UL、0xffeeUL%lu、%lx、%lo
long long int0x5e5e5LL、500ll%lli、%llx、%llo
unsigned long long int12ull、0xffeeULL%llu、%llx、%llo
float12.34f、3.1e-5f、0x1.5p10、0x1P-1%f、%e、%g、%a
double12.34、3.1e-5、0x.1p3%f、%e、%g、%a
long double12.34L、3.1e-5l%Lf、%Le、%Lg
idnil%p

注意:在表2.2中,在整形常量中以0开头表示常量是八进制(基数8)的,以0x开头或0X表示它是十六进制(基数16)的,数字0x.1p3表示十六进制浮点常量。不必担心这些格式,这里只是为了使表格完整进行的总结。此外,前缀f、l(L)、u(U)和ll(LL)用来明确表示常量是float、long、unsigned和long long类型。



类型转换

    1.自动类型转换

    *把整型类型(包括字符型)的变量赋给浮点型变量,不会有太大的变化。

    *把浮点型类型的变量和值赋给整型(包括字符型)变量,数值的小数部分会被直接舍弃。

    *当把取值范围大的变量和值赋给取值范围小的变量时,可能发生溢出

    2.强制性类型转换

    强制性类型转换的运算符是圆括号(()),例如:int a = 100; int b = 3; float f = (float) a / b;

    3.表达式类型的自助提升 




参考:
1.   Objective-C 学习笔记 - 第2章 数据类型、运算符和表达式
     http://www.jianshu.com/p/88edda182683

http://blog.youkuaiyun.com/tangjun201/article/details/45563125






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值