您现在的位置:首页 --> 查看专题: 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天十大热文
-
[1397] WordPress插件开发 -- 在插件使用 -
[114] 解决 nginx 反向代理网页首尾出现神秘字 -
[28] find命令的一点注意事项 -
[28] 分布式系统hash策略 -
[27] 如何建立合适的索引? -
[26] Oracle MTS模式下 进程地址与会话信 -
[26] 你应该知道的16个Linux服务器监控命令 -
[25] 浅谈MySQL索引背后的数据结构及算法 -
[25] DNS解析过程及DNS TTL值 -
[25] 读书笔记-壹百度:百度十年千倍的29条法则
赞助商广告