首页 理论教育 C语言程序设计教程:自定义类型解析

C语言程序设计教程:自定义类型解析

时间:2023-10-23 理论教育 版权反馈
【摘要】:C语言不仅提供了丰富的数据类型,而且还允许用户自定义类型。例如,有整型变量a、b,其定义形式如下:其中,int是整型变量的类型说明符。综上所述,typedef命令只是用新的类型名来代替已有的类型名,并没有为用户建立新的数据类型。使用typedef进行类型定义可以增加程序的可读性,并且为程序移植提供方便。

C语言程序设计教程:自定义类型解析

C语言不仅提供了丰富的数据类型,而且还允许用户自定义类型。即允许用户为数据类型取“别名”,类型定义符typedef可用来实现此功能。例如,有整型变量a、b,其定义形式如下:

其中,int是整型变量的类型说明符。整型的完整写法为“integer”,为了增加程序的可读性可对整型说明符int用typedef重新命名。例如:

以后就可用INTEGER来代替int作整型变量的类型说明符了。

例如:

其中,“原类型名”为已存在的数据类型名,“新类型名”一般用大写字母表示,以便于区别。

用typedef进行类型定义,将对编程带来很大的方便,不仅使程序书写简单而且使意义更为明确,因而增强了程序的可读性。

1.用typedef定义数组

变量s1、s2的定义等效于如下语句。

2.用typedef定义指针

p、st的定义等价于如下语句。(www.xing528.com)

3.用typedef定义结构体类型

定义STUTP表示结构体类型struct student_type,然后可用STUTP来声明结构体变量。

“STUTP stul,stu2;”等价于“struct student_type stul,stu2;”。

以下是关于typedef的几点说明。

(1)用typedef可以声明各种类型名,但不能用来定义变量。

(2)用typedef只是对已经存在的类型增加一个别名,并没有创造出新类型。

(3)typedef与#define有相似之处。例如:

这两个语句的作用都是用COUNT代表int,但它们是不同的。#define是由预处理完成的,只能做简单的字符串替换;typedef则是在编译时完成的,后者更为灵活方便。

综上所述,typedef命令只是用新的类型名来代替已有的类型名,并没有为用户建立新的数据类型。使用typedef进行类型定义可以增加程序的可读性,并且为程序移植提供方便。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈