【c语言】typedef的基本用法 | 定义格式

文章介绍了C语言中typedef关键字的使用,包括基本类型的自定义、指针和数组类型的定义、函数类型的重命名以及嵌套定义,强调了typedef在提高代码可读性和语义清晰性方面的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

创作不易,本篇文章如果帮助到了你,还请点赞支持一下♡>𖥦<)!! 

主页专栏有更多知识,如有疑问欢迎大家指正讨论,共同进步!

给大家跳段街舞感谢支持!ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ ዽ ጿ ኈ ቼ  

c语言系列专栏: c语言之路重点知识整合 

目录

定义格式与含义

 一、基本类型的自定义

二、指针、数组类型的自定义

三、函数类型的自定义

四、嵌套定义

总结 


定义格式与含义

模板:   typedef 现有类型名 自定义名称

typedef就是重命名!  注意是类型名,即不同类型的特征。

将现有的类型名重命名为自定义名称,并且可以通过自定义名称进行变量操作。

方便阅读与编程语义的流畅性

例如:c语言中没有布尔类型,可以通过typedef命名一个布尔类型

#include <stdio.h>
typedef int BOOLEAN;   //为现有int类型 命名一个新的类型 通常自定义类型名称为大写
int main ()
{
       /* 模板: typedef 现有类型名 自定义名称 */
    BOOLEAN sex = 1;
    return 0;
}

这就是将int类型重命名为BOOLEAN类型,其本质还是int类型

  

 一、基本类型的自定义

	typedef int INTEGER;
	int a;
	INTEGER b;

	typedef char BYTE;
	BYTE c;

int a与INTEGER b等价,本质都是int a。BYTE本质为char类型。

二、指针、数组类型的自定义

将int* 类型重命名为PINT。 数组类型去掉数组名改为想改的自定义名。数组指针类型同理。

	typedef int* PINT;   //int *p = z,t,x;
	PINT z, t, x;

	typedef int FIVEINT[5];
	FIVEINT a5 = { 1,2,3,4,5 };
	FIVEINT* pa5 = &a5;

	typedef int(*P_FIVEINT)[5];
	P_FIVEINT pfi = &a5;

三、函数类型的自定义

通过对函数指针类型的重命名。 使用函数指针执行函数代码。

关于函数指针的知识点:c语言函数指针详解

	double (*pmath)(double);            //函数指针变量
	typedef double (*PMATH)(double);    //函数指针 类型
	PMATH p = sqrt;
	PMATH ps[4] = {sqrt,ceil,floor,fabs};
	for (int i = 0; i < 4; i++)
	{
		printf("%f\n",ps[i](2.5));
	}

四、嵌套定义

嵌套就是对命名后的名字再命名。无论进行多少次重命名,本质还是int类型。

#include <stdio.h>
/*4 嵌套定义 */
typedef int INTEGER;//新类型
typedef INTEGER* POINT_INT;//为新类型指针 创建另一个新类型
typedef POINT_INT* POINT_POINT_INT;
int main()
{
     INTEGER a=10;
     POINT_INT p=&a;
     POINT_POINT_INT pp=&p;
    printf("%d\n",a);
    printf("%d\n",*p);
    printf("%d\n",**pp);
    return 0;
}

总结 

typedef就是将现有的类型名重命名为自定义名称,方便阅读与编程语义的流畅性

大家的点赞、收藏、关注将是我更新的最大动力!欢迎留言或私信建议或问题。

大家的支持和反馈对我来说意义重大,我会继续不断努力提供有价值的内容!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天喜Studio

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值