typedef的四个用途和两大陷阱计算机等级考试

文章作者 100test 发表时间 2010:01:02 07:01:54
来源 100Test.Com百考试题网


  用途一:

  定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。比如:

  char* pa, pb. // 这多数不符合我们的意图,它只声明了一个指向字符变量的指针,

  // 和一个字符变量;

  以下则可行:

  typedef char* PCHAR. // 一般用大写

  PCHAR pa, pb. // 可行,同时声明了两个指向字符变量的指针

  虽然:

  char *pa, *pb.

  也可行,但相对来说没有用typedef的形式直观,尤其在需要大量指针的地方,typedef的方式更省事。

  用途二:

  用在旧的C的代码中(具体多旧没有查),帮助struct。以前的代码中,声明struct新对象时,必须要带上struct,即形式为: struct 结构名 对象名,如:

  struct tagPOINT1

  {

  int x.

  int y.

  }.

  struct tagPOINT1 p1.

  而在C 中,则可以直接写:结构名 对象名,即:

  tagPOINT1 p1.

  估计某人觉得经常多写一个struct太麻烦了,于是就发明了:

  typedef struct tagPOINT

  {

  int x.

  int y.

  }POINT.


相关文章


基于TCP协议的socket编程实例计算机等级考试
基于UDP协议的socket编程实例计算机等级考试
DllMain和多线程死锁计算机等级考试
通过ini实现多语言菜单计算机等级考试
typedef的四个用途和两大陷阱计算机等级考试
VC中如何建立一个UNICODE应用程序计算机等级考试
用C实现C 的多态计算机等级考试
编程实现自定义系统右键菜单功能计算机等级考试
高质量程序设计指南:strcpy的实现计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛