当前位置:网站首页>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);
}
运行结果:

边栏推荐
- 投资75亿卢比!印度宣布建首座存储芯片组装和封测工厂,将于12月量产
- An动画基础之元件的影片剪辑动画与传统补间
- The components of the basis of An animation movie clip animation between traditional filling
- HCIP 第十六天笔记(SVI、生成树协议)
- Relia Tech活性VEGFR重组蛋白丨小鼠 VEGF120实例展示
- 漫画:怎么证明sleep不释放锁,而wait释放锁?
- IDO代币预售dapp开发及NFT模式
- leetcode16 Sum of the closest three numbers (sort + double pointer)
- leetcode 11. 盛最多水的容器
- Golang 互斥锁
猜你喜欢
随机推荐
利用pgsql插件PostGIS 实现地理坐标系数据转换
中国手机品牌争论谁是国内第一,而它已成为中国手机在海外的代表
JS get browser type
An introduction to the pen tool, pencil tool and brush tool
An animation basic element movie clip effect
TiFlash 计算层概览
Golang GMP principle
Redis 6 的多线程
HCIP-第十二天-MPLS+VNP
Relia Tech活性VEGFR重组蛋白丨小鼠 VEGF120实例展示
【二叉树】从二叉树一个节点到另一个节点每一步的方向
[R] Use grafify for statistical plotting, ANOVA, intervention comparisons, and more!
冷链行业商业供应链系统:实现全流程数字化协同,激活企业迸发市场活力
Nanoprobes Ni-NTA-Nanogold——用于 His 标签标记和检测
An工具介绍之骨骼工具
IDEA的模板(Templates)
4年工作经验,多线程间的5种通信方式都说不出来,你信吗?
易观分析:2022年Q2中国网络零售B2C市场交易规模达23444.7亿元
Golang dictionary map
IDO代币预售dapp开发及NFT模式
![[OpenCV] Cascade classifier training model](/img/37/ba57190d3515432700ec97ad14d0b9.png)

![Tinymce plugins [Tinymce扩展插件集合]](/img/c6/da0782a4c85085cf7b5af86e249408.png)






