C/C++声明

来源:互联网 发布:阿里云的域名证书 编辑:程序博客网 时间:2024/05/17 06:23


我们有如下规则:

按顺序依次读取


A、声明从它的名字开始读取

B、  1、声明中被括号括起来的部分


2、后缀操作符(括号()表示函数,[ ]表示数组)

3、前缀操作符  星号*表示指向什么的指针


C、如果const和(或)volatile关键字后面紧跟类型说明符(如int,long)那它的作用于类型说明符,其他情况下const或volatile关键字作用于它左边紧邻的指针星号*



下面看一些具体的例子:


如函数声明     char * const *(*next)()  

     A、先看变量名  next

B-1  注意被括号包围起来的部分   B-2 后缀操作符  没有      B-3  前缀操作符  *                 得出   next是一个指向  ..........的指针

然后考虑括号外面的东西

B-2 后缀操作   ()表示next是一个函数指针,指向一个返回.......的函数

B-3 前缀操作符    *    表示next是一个函数指针,指向一个返回指针的函数


然后看   const   后面没有跟  int  long  所以const修饰左边紧邻的星号*      表示函数返回的指针指向一个char类型的常量指针

最终结果为


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

根据上面的规则,再难的声明也可以分析出来,用的时候,要注意按照顺序来。一般的规则是先看右边的符号,再看左边的。


0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 美术生联考没过怎么办 美术联考刚过线怎么办 要是艺考失败那怎么办 4s店把车漆划了怎么办 深户怎么办港澳个人游 qq发红包被骗了怎么办 脚上面长了个包怎么办 便池水不停的淌怎么办 车门磕掉一点漆怎么办 成考密码忘了怎么办 法国签证拒签了怎么办 申根签证拒签怎么办 驾驶证扣了12分怎么办 驾照一下扣12分怎么办 c1驾照分扣完了怎么办 驾照扣完12分后怎么办 驾照扣了60多分怎么办 驾照被扣了12分怎么办? c1驾照记满12分怎么办 不交钱不让验房怎么办 中考考号忘了怎么办 高考考生号忘了怎么办 1岁宝宝吞了硬币怎么办 小孩吞了5角硬币怎么办 10小孩吞了硬币怎么办 小孩吞了5毛硬币怎么办 小孩把硬币吞了怎么办 高三数学成绩差怎么办 没交社保的工龄怎么办 购置税证明丢了怎么办 车登记证书丢了怎么办 车辆登记书丢了怎么办 车贷分期还完了怎么办 住宅70年到期后怎么办 在外地扣了12分怎么办 英语6级证书丢了怎么办 孩子腺样体肥大鼻子堵塞怎么办 孩子初中成绩太差怎么办 交违章罚单丢了怎么办 违章缴费单丢了,怎么办 违章处理单掉了怎么办