微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Objective-C开发——数据类型知识点总结


布尔类型

   许多语言都有布尔(Boolean)类型,当然这是个专用术语,指的是存储真值和假值的变量。Objective-C也不例外。

   C语言拥有布尔数据类型bool,它具有true值和false值。Objective-C提供了相似的类型BOOL,它具有YES值和NO值。顺便提一下,Objective-C的BOOL类型比C语言的bool类型早诞生十多年。这两种不同的布尔类型可以在同一个程序中共存,但在便携Cocoa代码时要使用BOOL。

Objective-C中的BOOL实际上是一种对带符号的字符类型(signed char)的定义(typedef),它使用8位存储空间。YES定义为1,NO定义为0(使用#define)。

Objective-C并不讲BOOL作为仅能保存YES或NO值的真正的布尔类型来处理。编译器将BOOL认做8位二进制数,YES或NO只是一种约定,这引发一个小问题:如果不小心讲一个长于1字节的整型值(例如short或int值)赋给一个BOOL变量,那么只有低位字节会用作BOOL值,假设该低位字节刚好为0(例如8960,携程十六进制为0x2300),BOOL值将会是0,即NO值。

==================================================

数据类型和常量

整型int:表示方法

十进制:格式符符号:%i(long:%Li)

八进制:首位为0,其后为0~7之间的数,格式符为:%o(long:%Lo)(不带0),%#o(带0)

十六进制:首位为:0x(大小皆可),其后为0~9、A~F(10~15)组合。格式符为:%x(无0x),%#x(带0x)

 

浮点float转换字符:%f。1.7*104= 1.7e4,1.7*10-4=1.7e-4,E或e皆可。科学技术法格式符:%e。%g:允许NSLog确定使用常用的浮点计数法还是使用科学计数法来显示浮点。这一决定取决于指数的值:如果该值小于-4或大于5,采用%e(科学计数法)表示,否则采用%f(浮点计数法)。

 

双精度double格式符号:%f(long:%Lf),%e(long:%Le),%g(long:%Lg)同float一致。范围是float两倍。

 

字符型char:例如:‘a’。前面有@字符并且放在双引号中的字符串是Nsstring字符串对象。

字符常量‘\n’(换行符)是一个合法的字符常量,因为反斜杠符号是Objectiv-C系统中的特殊符号,实际上并不把它看成一个字符。换句话说,Objective-C编译器将字符’\n’看作单个字符,尽管它实际上由两个字符组成。格式符号:%c。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐