typedef 用法解决方法

typedef 用法同样,可以象下面这样隐藏指针语法:typedefchar*pstrintmystrcmp(pstr,pstr)  这里将带我们

typedef 用法
同样,可以象下面这样隐藏指针语法:

typedef   char   *   pstr;
int   mystrcmp(pstr,   pstr);
  这里将带我们到达第一个   typedef   陷阱。标准函数   strcmp()有两个‘const   char   *’类型的参数。因此,它可能会误导人们象下面这样声明   mystrcmp():

int   mystrcmp(const   pstr,   const   pstr);  
  这是错误的,按照顺序,‘const   pstr’被解释为‘char   *   const’(一个指向   char   的常量指针),而不是‘const   char   *’(指向常量   char   的指针)。这个问题很容易解决:

typedef   const   char   *   cpstr;  
int   mystrcmp(cpstr,   cpstr);   //   现在是正确的


-----------------------------
感觉const   pstr为什么不是const   char*   而是   char*   const呢?


谢谢!!

[解决办法]
C++规定!typedef后,就紧密结合了。