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*

相关推荐
xx~t8 小时前
嵌入式——Linux软件编程——网络1
linux·c语言·网络·vscode·网络协议
sakiko_8 小时前
OC基础语法(与Swift对比)-1
开发语言·ios·objective-c·swift
迷迭香yy8 小时前
基金档案数据工程实战从收入分析到持仓穿透的Python解析 IG50免费开源股票数据API接口
开发语言·python
晊晌_h9 小时前
嵌入式从0到精通——线程
java·开发语言·jvm
一木 之林9 小时前
五、C++ 新特性、关键字与编译原理(进阶)(二)
java·开发语言·c++
OPEN-F9 小时前
C++11/14新特性精讲:移动语义与智能指针实战
开发语言·c++·算法
小灰灰搞电子9 小时前
Rust+Slint 实现动态轮播图源码分享,支持动态删除、添加
开发语言·rust·slint·动态轮播图
前端 贾公子9 小时前
第09章:上下文与记忆 (6)
开发语言·前端·python
sunburn-10 小时前
Java堆(Heap)详解与实战教学
java·开发语言·数据结构·ide·算法
jayson.h10 小时前
PDF 合并+添加页码 相关库、类、函数
开发语言·前端·python