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*

相关推荐
devmoon2 小时前
运行时(Runtime)是什么?为什么 Polkadot 的 Runtime 可以被“像搭积木一样”定制
开发语言·区块链·智能合约·polkadot·runtmie
时艰.2 小时前
Java 并发编程 — 并发容器 + CPU 缓存 + Disruptor
java·开发语言·缓存
忆~遂愿2 小时前
GE 引擎进阶:依赖图的原子性管理与异构算子协作调度
java·开发语言·人工智能
沐知全栈开发2 小时前
API 类别 - 交互
开发语言
人道领域2 小时前
SSM框架从入门到入土(AOP面向切面编程)
java·开发语言
铅笔侠_小龙虾2 小时前
Flutter 实战: 计算器
开发语言·javascript·flutter
2的n次方_3 小时前
Runtime 执行提交机制:NPU 硬件队列的管理与任务原子化下发
c语言·开发语言
2501_944711433 小时前
JS 对象遍历全解析
开发语言·前端·javascript
凡人叶枫3 小时前
C++中智能指针详解(Linux实战版)| 彻底解决内存泄漏,新手也能吃透
java·linux·c语言·开发语言·c++·嵌入式开发
Tony Bai3 小时前
再见,丑陋的 container/heap!Go 泛型堆 heap/v2 提案解析
开发语言·后端·golang