解读复杂指针声明
2010-06-11 20:35
246 查看
C/C++语言所有复杂的指针声明,都是由各种声明嵌套构成的。如何解读复杂指针声明呢?右左法则是一个既著名又常用的方法。不过,右左法则其实并不是C标准里面 的内容,它是从C标准的声明规定中归纳出来的方法。C标准的声明规则,是用来解决如何创建声明的,而右左法则是用来解决如何辩识一个声明的,两者可以说是 相反的。右左法则的英文原文是这样说的: The right-left rule: Start reading the declaration from the innermost parentheses, go right, and then go left. When you encounter parentheses, the direction should be reversed. Once everything in the parentheses has been parsed, jump out of it. Continue till the whole declaration has been parsed.
这段英文的翻译如下: 右左法则:首先从最里面的圆括号看起,然后往右看,再往左看。每当遇到圆括号时,就应该掉转阅读方向。一旦解析完圆括号里面所有的东西,就跳出圆括号。重 复这个过程直到整个声明解析完毕,这个法则可以进行一个小小的修正,应该是从未定义的标识符开始阅读,而不是从括号读起,之所以是未定义的标识符,是因为一个声明里面可能有多个标识 符,但未定义的标识符只会有一个。
这段英文的翻译如下: 右左法则:首先从最里面的圆括号看起,然后往右看,再往左看。每当遇到圆括号时,就应该掉转阅读方向。一旦解析完圆括号里面所有的东西,就跳出圆括号。重 复这个过程直到整个声明解析完毕,这个法则可以进行一个小小的修正,应该是从未定义的标识符开始阅读,而不是从括号读起,之所以是未定义的标识符,是因为一个声明里面可能有多个标识 符,但未定义的标识符只会有一个。
相关文章推荐
- 如何解读复杂指针声明
- 复杂指针的声明和解读
- 如何解读复杂指针声明呢?
- 如何解读复杂指针声明
- 复杂的指针声明的两种解读方法
- 复杂指针的声明
- 理解复杂的C/C++声明 const, typedef , 函数指针
- 对指针的认识-------------------------指针的复杂声明
- C指针声明解读之左右法则
- C语言复杂指针声明应如何阅读
- C指针声明解读之右左法则
- C语言所有复杂的指针声明
- "右左法则"解读C的复杂声明
- C++指针详解/理解c和c++的复杂类型声明
- 如何看懂复杂的指针声明?
- C指针声明解读之左右法则
- c语言复杂变量声明(数组、指针、函数)
- 理解c和c++的复杂类型声明 (掺杂指针)
- 复杂指针的声明
- 理解C语言中指针的声明以及复杂声明的语法