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 小时前
Linux:环境变量
linux·开发语言·学习
爱编码的小八嘎1 小时前
C语言对话-10.关于操纵器的对话
c语言
徐徐同学1 小时前
cpolar为IT-Tools 解锁公网访问,远程开发再也不卡壳
java·开发语言·分布式
LawrenceLan1 小时前
Flutter 零基础入门(二十六):StatefulWidget 与状态更新 setState
开发语言·前端·flutter·dart
m0_748229991 小时前
Laravel8.X核心功能全解析
开发语言·数据库·php
qq_192779872 小时前
C++模块化编程指南
开发语言·c++·算法
代码村新手2 小时前
C++-String
开发语言·c++
qq_401700412 小时前
Qt 中文乱码的根源:QString::fromLocal8Bit 和 fromUtf8 区别在哪?
开发语言·qt
EndingCoder3 小时前
案例研究:从 JavaScript 迁移到 TypeScript
开发语言·前端·javascript·性能优化·typescript