跟我一起学OC系列-布尔类型
来源:互联网 发布:原生js获取json文件 编辑:程序博客网 时间:2024/04/30 13:19
大家先来看看objective-c是如何定义布尔类型的,废话不多说,直接看如下截图:
从上图可以了解到:Objective C中的BOOL实际上是一种对带符号的字符(singed char)类型的定义(typedef),它使用8位存储空间(一个字节)。YES定义为1,而NO定义为0(使用#define)。 编译器将BOOL认做8为二进制数,YES 和 NO值只是一种约定。这会引发一个小问题,不过不小心把一个长于1字节的整形复制给BOOL变量,那么只有低位作BOOL值。
例子如下:
BOOL flag=YES; NSLog(@"%d",flag); BOOL test=127; NSLog(@"%d",test); if (test) { NSLog(@"test is YES"); }else{ NSLog(@"test is NO"); } BOOL test2=8960; NSLog(@"%d",test2); if (test2) { NSLog(@"test is YES"); }else{ NSLog(@"test is NO"); }
运行结果如下:
当给test2=8960,只会取它的低8位,所以结果为NO。
0 0
- 跟我一起学OC系列-布尔类型
- 跟我一起学OC系列-开篇
- 跟我一起学OC系列-最经典篇
- 跟我一起学OC系列-OOP编程的基础知识
- 跟我一起学Visual Studio 2008系列课程
- 跟我一起学Visual Studio 系列课程
- 跟我一起从零开始学WCF系列课程
- 跟我一起从零开始学WCF系列课程
- 跟我一起学JFinal系列一JFinal简介
- 跟我一起学算法系列4---替换空格
- 跟我一起学java
- 跟我一起学摄影
- 跟我一起学makefile
- 跟我一起学Makefile
- 跟我一起学Makefile
- 《跟我一起学C++》
- 跟我一起学makefile
- 跟我一起学CMake
- Java第三章习题3-3(彩票中奖2)
- c++ STL 数据结构底层结构
- 正则表达式学习及应用
- Finished with Non Zero Exit Value 3
- 如何使用红杏的公益代理
- 跟我一起学OC系列-布尔类型
- js验证上传的文件是否为JPEG,PNG,JPG,GIF格式
- 对于无线传感网的初步认识
- AutoCAD套合(叠加)卫星影像和矢量路网数据-CAD配准
- Wildcard Matching_Leetcode_#44
- SELinux深入理解
- Jenkins+Maven+SVN+Sonar持续集成(一)Centos6.5上Jenkins安装
- Open Win32 App in C#, with extern keyword
- java处理错误