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)[];//指针
阅读(2401) | 评论(0) | 转发(2) |