理解C语言声明的优先级规则

  1. 声明从它的名字开始读取,然后依次按优先级依次读取。
  2. 优先级从高到低依次是
      •   声明中被括号括起来的那部分
      •      后缀操作符:
        • 括号()表示这是一个函数
        • 方括号表[]这是一个数组
      •   前缀操作符:星号*表示“指向...的指针”
  3. 如果const和(或)valatile关键字的后面紧跟类型说明符(如int,long等),那么它作用于类型说明符,在其他情况下,const和(或)volatile关键字作用于塔左边紧邻的指针星号。

  摘自《C专家编程》

  举例:

  

  char * const *(*next)();

  next是一个指针,指向一个函数,该函数返回一个指针,返回一个指向类型为char的常量指针。

    

                                 

posted @ 2014-03-26 16:00  赵洪武  阅读(288)  评论(1)    收藏  举报