当前位置:网站首页>typedef关键字的用法
typedef关键字的用法
2022-08-03 13:10:00 【BSP初级小学僧】
基本定义:
typedef为C语言的关键字,作用是为一种数据类型 定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。 在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。
用途一:与#define的区别
typedef 行为有点像 #define 宏,用其实际类型替代同义字。不同点是 typedef 在编译时被解释,因此让编译器来应付超越预处理器能力的文本替换。
用途二:减少错误
定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。
typedef struct //关键字typedef
{
int id;
int score;
}Stu_i;//爱称(相当于数据类型)
Stu_i stu01={2202,89},stu02;
另外typedef在使用时,可以省略结构体变量名:
typedef struct //关键字typedef
可以看到如果没有使用typedef关键字的时候,这个就是一个匿名结构体。
源代码:
#include <stdio.h>
#include <string.h>
void struct_test(void);
int main()
{
struct_test();
return 0;
}
void struct_test(void)
{
typedef struct //关键字typedef
{
int id;
int score;
}Stu_i;//爱称(相当于数据类型)
Stu_i stu01={2202,89},stu02;
printf("%d %d",stu01.id,stu01.score);
printf("\n");
stu02.id=2203;
stu02.score=100;
printf("%d %d",stu02.id,stu02.score);
}
运行结果:
边栏推荐
- 升级农企业务运营建设,智慧供应链管理平台打造“共赢生态链”
- Sogou news - dataset
- HCIP-第十二天-MPLS+VNP
- Forrester:行业云帮助中国企业更快适应未来的发展
- HCIP第十五天笔记(企业网的三层架构、VLAN以及VLAN 的配置)
- An动画优化之传统引导层动画
- Tinymce plugins [Tinymce扩展插件集合]
- IDO代币预售dapp开发及NFT模式
- [Practical skills] APP video tutorial for updating APP in CANFD, I2C, SPI and serial port mode of single-chip bootloader (2022-08-01)
- secureCRT连接开发板连接不上问题解决
猜你喜欢
An工具介绍之骨骼工具
An animation optimization of traditional guide layer animation
苹果终于认清现实,销量成为优先考虑,iPhone14将不涨价
[Practical skills] APP video tutorial for updating APP in CANFD, I2C, SPI and serial port mode of single-chip bootloader (2022-08-01)
Nanoprobes EnzMet - 酶金相相关介绍及应用
sessionStorage of BOM series
Relia Tech活性VEGFR重组蛋白丨小鼠 VEGF120实例展示
工具模板 | 用APOEM方法消除对用户行为的偏见
超大规模的产业实用语义分割数据集PSSL与预训练模型开源啦!
Hanyuan Hi-Tech G8032 standard ERPS ring network switch Gigabit 4 optical 10 electrical industrial Ethernet switch ring network + WEB management + SNMP VLAN planning
随机推荐
国产替代风潮下,电子元器件B2B商城系统如何助力企业突围市场竞争
Golang sync.WaitGroup
The maximum number of sliding window
可视化图表设计Cookbook
Redis 6 的多线程
Notepad++ 安装jsonview插件
美国拟对华禁售128层以上NAND Flash制造设备
TensorFlow离线安装包
Golang structs & methods
Golang arrays and slices
ECCV 2022 | AirDet: 无需微调的小样本目标检测方法
来广州找工作有一个多月了,今天终于有着落了,工资7000
An动画优化之传统引导层动画
硬件业务收入下滑,为了赚钱,苹果暧昧对待流氓软件和增加广告了
An工具介绍之骨骼工具
Nanoprobes FluoroNanogold 偶联物的特色和应用
An introduction to 3D tools
leetcode/字符串中的所有变位词(s1字符串的某个排列是s2的子串)的左索引
Insertion or Heap Sort
Golang dictionary map