2011年3月13日

它被定义了,但它却被定义为未定义——有趣的宏定义

摘要: 前些日子为了弄清楚宏定义写了个小程序,忽然发现将标识符定义为空和将标识符定义为未定义完全是两码事……然后发现原来宏定义中还有一种状态叫“未定义”。下面就是那个小程序以及简单的分析,然后通过这个程序可以充分体验一下这个“未定义”的状态,体验一下什么叫“它被定义了,但它却被定义为未定义”。程序源码:#include<stdio.h>int main(){#if (A == B) printf("define A = B\n");#elif (A == C) printf("define A = C\n");#else printf("n 阅读全文

posted @ 2011-03-13 11:09 守夜者 阅读(3025) 评论(2) 推荐(0) 编辑

轻松掌握c语言中的sizeof

摘要: 网上有很多文章已经详细讲述过sizeof的用法,但是我觉得其实sizeof并没有那么复杂。在这儿简单地再总结一下。1,是什么? sizeof其实就是一个运算符,和那些+,-一样的东西,在程序编译的时候进行解析转换。虽然我们经常见到sizeof后面跟着个小括号,长得和函数差不多,但它和函数完全是两码事。2,有什么用? sizeof其实就是用于告诉我们编译器在为某一特定数据或者某种数据类型的数据在存储空间中开辟空间时,开辟的空间大小,以字节为单位。3,怎么用? sizeof(类型),或者sizeof(变量)都可以,得到的就是类型或者变量的存储空间。当对变量用的时候,也可以没有括号,直接 size. 阅读全文

posted @ 2011-03-13 09:34 守夜者 阅读(4185) 评论(0) 推荐(1) 编辑

导航