博客首页 注册 建议与交流 排行榜 加入友情链接         宝宝相册的专门空间
推荐 投诉 搜索: 帮助

aobai

给自己立法三章: 一:决不抄袭 二:向一个优秀的网络,linux专家看齐 三:做事要专心,要脚踏实地,step by stey PS:本blog完全是为了自己学习所用,如果转载文章有不妥的地方,请指出,一定改正。
aobai.cublog.cn


读书笔记《c 专家编程》3
第三章
分析c语言的声明


的确,声明是很复杂,c语言毫无比要的被声明搞复杂了。
举例:
const int * grape;
int const *grape;
int * const grape;

三者的意思是什么?(p61)
还有就是位运算是什么东东?
关于联合,联合的缺点就是他的优点并不突出。
联合可以将同一个东东解释成两种完全不同的东东,而不是将两种不同的东西解释成同一种东东。
枚举缺省情况下是从0开始,遵循一个原则,紧随其后的始终大1。还有就是#define 定义的名字一般在编译的时候就会丢失,
但是枚举通常在调试器中可见,可以在调试代码的时候使用它们。
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
优先级准则:(p65)
一:
       如果const 和volatile关键字的后面紧跟类型说明符(如 int,long等),那么它作用于类型说明符。在其他情况下,
const和(或)volatile作用于他左边紧邻的指针星号。
二:
      一开始,我们从左边向右寻找,直到找到第一个标识符,当声明中的某个符。。。。。(p65)
。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
声明typedef是怎么形成的?
      typedef的格式与变量的声明是完全一样的,只是多了个关键字,向你提醒它的 实质。
宏和声明的区别:
      typedef int x[10] 和  #define x int [10]的区别?
                首先,可以用其他类型说明符对宏类型名进行扩展,但是对typedef所定义的类型名却不能够这样做。
                 其次,在连续的几个变量的声明中,用typedef定义能够保证声明中所有的变量均为同一种类型,但是宏却不能够保证。

举例:
        说出意思?
      char *(*c[10])(int **p);


发表于: 2008-05-09 ,修改于: 2008-05-09 22:28,已浏览66次,有评论1条 推荐 投诉


网友评论
内容:
     如果const 和volatile关键字的后面紧跟类型说明符(如 int,long等),那么它作用于类型说明符。在其他情况下,
const和(或)volatile作用于他左边紧邻的指针星号。
本站网友评论于:2008-05-11 18:28:17 (219.153.62.★)

发表评论