当前位置:   article > 正文

C语言 typedef 的三种应用场景_哪些场景会用到typedef

哪些场景会用到typedef

笔记内容基于以下学习资料整理: 黑马最新c、c++全栈培训第24期高清无密(全)\02c语言提高\02-c提高01day\C提高 day01\课堂视频\05 typedef用法_.mp4

typedef的三种应用场景:

typedef struct Person{ }myPerson;
typedef char * PCHAR;
typedef long long myType;
  • 1
  • 2
  • 3

typedef struct Person{ }myPerson;

给结构体struct定义别名,避免每次使用时都输入struct;

typedef char * PCHAR;

如果需要同时定义两个指向某类型的指针,一种可能的错误写法如下:

char * p1, p2;
  • 1

错误原因在于,上述定义的变量p1是指向char 的指针,而 p2只是一个char类型。
正确的写法如下:

char *p1,*p2;
  • 1

然而,如果不想多次输入 * 符号,则可以使用

typedef char * PCHAR
PCHAR p1,p2;
  • 1
  • 2

【补充内容】:C++ 输出变量类型

cout<<typeid(p1).name()<<endl;
  • 1

typedef long long myType

​不同编译器支持的变量类型可能不一样,比如有的可能不支持 long long,
这会破坏代码的可移植性;
如果代码中要用到很多long long,而迁移后的编译器不支持long long,那么可以将

typedef long long myType;
  • 1

修改为

typedef int myType;
  • 1

从而避免大批量的将代码中的 long long 修改为 int

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/木道寻08/article/detail/952105
推荐阅读
相关标签
  

闽ICP备14008679号