学数据结构时有段C代码关于typedef的不太理解?
typedef TElemType SqBiTree;其实就是typedef int SqBiTree;也就是给int类型的,100元素的数组起了个别名叫做SqBiTree注意:typedef定义的类型别名通常也可以是变量的定义存在的位置
■网友
typedef 可以这样理解。首先,它的语法形式就像一个 define(定义),这就是def的意思。但是,它并不像定义一样,说明一个变量的类型,而是说明一个类型别名的实际类型,这就是type的意思。也就是说:如果你写 TElemType SqBiTree; 那么,你定义了一个变量SqBiTree,类型是TElemType 。如果你写 typedef TElemType SqBiTree; 那么,你定义了一个类型别名SqBiTree,这个类型别名所表达的类型是 TElemType
■网友
有一种很直观的解释,不用typedef时,你是声明变量。用了typedef后, 你可以用这个‘变量(类型)’去声明其他变量。typedef本身就是像声明变量一样去声明类型的。
■网友
就是typedef int SqBiTree;的意思啊,即把 int 这种类型叫做SqBiTree。譬如SqBiTree sq;的含义是int sq;的意思。另:注释中“Status是函数的类型”这句话是有问题的,应该是函数返回值类型。函数返回值类型和函数的类型不是一回事。
推荐阅读
- 怎样对别人的代码进行适当修改使他永远也找不到问题出在哪
- 异乡好居说程序员删除代码是未经证实的传言吗
- 这段代码中对 vector 的访问为啥不会越界
- C语言指数函数代码
- 学计算机就是当码农吗
- 实习程序员第一个月除了看别人的代码还能干啥
- 代码背后有哪些温柔和浪漫的故事
- 请问这段代码是啥意思,从一个仿造网站上下载的软件里面的,对电脑有危害吗
- 计算机跨考怎样增强自己的计算机编程和代码等综合能力
- 怎样向不懂编程的人描述某一段代码的“优美”?
