您现在的位置:首页 --> 查看专题: sizeof
喜欢写 C 的读者可能会经常和 sizeof 打交道,不论是分配内存,I/O 操作,还是计算数组大小的时候基本都会用到。这个在 C 中定义的运算符可以作用于类型或者某个实际的变量,并返回其在内存中的尺寸 size_t (这是和平台无关的一个整数类型)。在 Cocoa 中,我们也有一部分 API 需要涉及到类型或者实例的内存尺寸,这时候就可以使用 sizeof 来计算。一个常见的用例是在从一个数组生成 NSData 的时候需要传入数据长度。因为在 Objective-C 中 sizeof 这个 C 运算符被保留了,因此我们可以直接这么做。。。
熟悉c的人都知道,sizeof是一个关键字而不是一个宏或者库函数什么的,他的值是在编译时确定的,如果这个不了解,可以现看看这篇文章和这篇文章。 既然如此,让我们先看下面几个小例子: sizeof(int); sizeof(char); sizeof(double); 上面三行sizeof的值是多少呢?这里我们假定在32位的x86系统下。我们会得到答案:4,1,8。这个没什么吧,大多数人都应该知道。那么,下面这个: sizeof(int); sizeof(long); 在32位x86下,这两个是多少呢?4,8?实际上,答案是4,4。我们需要注意,long类型在32位系统下是32位的。那么,64位下结果又如何呢?8,8?其实答案是4,8。另一个需要注意的是,64位下的int是32位的。
[ 共2篇文章 ][ 第1页/共1页 ][ 1 ]
近3天十大热文
- [55] WEB系统需要关注的一些点
- [50] Go Reflect 性能
- [50] Oracle MTS模式下 进程地址与会话信
- [48] find命令的一点注意事项
- [47] 如何拿下简短的域名
- [45] Twitter/微博客的学习摘要
- [45] 流程管理与用户研究
- [45] 【社会化设计】自我(self)部分――欢迎区
- [44] android 开发入门
- [44] IOS安全–浅谈关于IOS加固的几种方法
赞助商广告