45.5【C语言】typedef

目录:

*全称

*格式

一般指针

数组指针

函数指针

*细节

*全称

type define 类型(重新)定义(或命名),可简化输入

*格式

1.非指针类型: typedef 类型 简化名称

cpp 复制代码
typedef signed long long k;

signed long long被简写为k这个别名,之后可用k直接定义变量,简化输入

2.指针类型

必须要求简化名称在*旁边

一般指针

cpp 复制代码
typedef int* ptr  

把int*指针类型简写为ptr

数组指针

cpp 复制代码
typedef int(*ptr)[10];

把int(*)[10]数组指针简写为ptr

禁止写成 typedef int(*)[10] ptr !

函数指针

cpp 复制代码
typedef int(*ptr)(int,int);

改函数有两个类型均为int的参数,且返回类型也是int

禁止写成typedef int(*)(int,int) ptr !

*细节

cpp 复制代码
int* p1,p2;
typedef int* ptr;
ptr p3,p4;

由于int*中*优先结合p1,导致p1,p2的类型不同

但用typedef将int*重定义为ptr后,p3和p4类型均为int*

相关推荐
楼台的春风1 小时前
【MCU驱动开发概述】
c语言·驱动开发·单片机·嵌入式硬件·mcu·自动驾驶·嵌入式
黑子哥呢?1 小时前
安装Bash completion解决tab不能补全问题
开发语言·bash
青龙小码农1 小时前
yum报错:bash: /usr/bin/yum: /usr/bin/python: 坏的解释器:没有那个文件或目录
开发语言·python·bash·liunx
大数据追光猿1 小时前
Python应用算法之贪心算法理解和实践
大数据·开发语言·人工智能·python·深度学习·算法·贪心算法
彳卸风2 小时前
Unable to parse timestamp value: “20250220135445“, expected format is
开发语言
dorabighead2 小时前
JavaScript 高级程序设计 读书笔记(第三章)
开发语言·javascript·ecmascript
风与沙的较量丶3 小时前
Java中的局部变量和成员变量在内存中的位置
java·开发语言
水煮庄周鱼鱼3 小时前
C# 入门简介
开发语言·c#
编程星空4 小时前
css主题色修改后会多出一个css吗?css怎么定义变量?
开发语言·后端·rust
软件黑马王子4 小时前
Unity游戏制作中的C#基础(6)方法和类的知识点深度剖析
开发语言·游戏·unity·c#