C语言sizeof关键字—被冤枉的关键字
来源:互联网 发布:java中的变量有哪些 编辑:程序博客网 时间:2024/05/05 17:59
一、常年被人误认为函数。
sizeof 是关键字不是函数,其实就算不知道它是否为32 个关键字之一时,我们也可以借助编译器确定它的身份。看下面的例子:int i=0;
A),sizeof(int); B),sizeof(i); C),sizeof int; D),sizeof i;
毫无疑问,32 位系统下A),B)的值为4。那C)的呢?D)的呢?在32 位系统下,通过Visual C++6.0 或任意一编译器调试,我们发现D)的结果也为4。
咦?sizeof 后面的括号呢?没有括号居然也行,那想想,函数名后面没有括号行吗?由此轻易得出sizeof 绝非函数。
好,再看C)。编译器怎么怎么提示出错呢?不是说sizeof 是个关键字,其后面的括号可以没有么?那你想想sizeof int 表示什么啊?int 前面加一个关键字?类型扩展?明显不正确,我们可以在int 前加unsigned,const 等关键字但不能加sizeof。好,记住:sizeof 在计算变量所占空间大小时,括号可以省略,而计算类型(模子)大小时不能省略。一般情况下,咱也别偷这个懒,乖乖的写上括号,继续装作一个“函数”,做一个“披着函数皮的关键字”。
做我的关键字,让人家认为是函数去吧。
二、sizeof(int)*p 表示什么意思?
留几个问题(讲解指针与数组时会详细讲解),32 位系统下:int *p = NULL;
sizeof(p)的值是多少?
sizeof(*p)呢?
int a[100];
sizeof (a) 的值是多少?
sizeof(a[100])呢?//请尤其注意本例。
sizeof(&a)呢?
sizeof(&a[0])呢?
int b[100];
void fun(int b[100])
{
sizeof(b);// sizeof (b) 的值是多少?
}
0 0
- C语言sizeof关键字—被冤枉的关键字
- Sizeof ---最冤枉的关键字
- 最冤枉的关键字----sizeof
- 最冤枉的关键字----sizeof
- 最冤枉的关键字----sizeof
- 最冤枉的关键字————sizeof
- C语言关键字—sizeof
- C语言关键字sizeof
- c语言关键字sizeof()
- C语言 sizeof关键字
- C语言 sizeof关键字
- c语言--sizeof关键字
- c语言sizeof关键字
- C语言中的sizeof关键字
- c语言中的关键字:sizeof
- C语言 sizeof关键字详解
- C-sizeof 关键字的应用
- C语言关键字--- void exrern sizeof
- 【C/C++学院】0726-cppIDE/一级指针/指针数组/函数指针/函数指针数组/二级指针
- 【项目1 - 存储班长信息的学生类】
- 第九周 课后实践:项目四——我的向量类
- SQL SERVER 2008无法到连接服务器的解决办法
- if与switch区别
- C语言sizeof关键字—被冤枉的关键字
- 第十周上机项目4我的向量类
- Java之美[从菜鸟到高手演变]之设计模式 (一)
- HIHO第九周
- 医学开源配准软件Elastix手册(中文翻译)——第五章 指南(掩膜和常见问题)
- 用WindowsAPI截屏并转换为RGB格式
- 【汇编】 冒泡排序。。。
- Android Volley完全解析(一),初识Volley的基本用法
- 第九周 课后实践:项目五——方程也是类