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

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

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

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

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

目录

定义格式与含义

 一、基本类型的自定义

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

三、函数类型的自定义

四、嵌套定义

总结 


定义格式与含义

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

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

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

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

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

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

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

【c语言】typedef的基本用法 | 定义格式_第1张图片  

 一、基本类型的自定义

	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));
	}

【c语言】typedef的基本用法 | 定义格式_第2张图片

四、嵌套定义

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

#include 
/*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就是将现有的类型名重命名为自定义名称,方便阅读与编程语义的流畅性

【c语言】typedef的基本用法 | 定义格式_第3张图片

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

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

你可能感兴趣的:(c语言之路重点知识整合,c语言,开发语言,c++,学习,笔记)