您的位置:首页 > 编程语言 > C语言/C++

const和typedef一起使用

2015-12-07 11:29 183 查看
typedef char *cstring;

在以下声明中cstr 的类型是什么

extern const cstring cstr;

第一个回答差不多都是

const char *cstr

即指向const 字符的指针但是这 这是不正确的const 修饰cstr 的类型。注意typedef不是define简单的展开。typedef后,cstring是一个助记符,是一个整体,是一个类型。

应该理解为:

typedef   char*   Type;

const   Type   data;   ==   char*   const   data;

分析时候注意就近原则,为方便理解类型是可去掉的。

const int * p;  ----〉const *p

int * const p;  ----->* const p

比较指针数组和数组指针的声明,可同时理解运算符结合次序,来理解p到底是何物

int *p[];// 数组

int (*p)[];//指针
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++ 开发 编程