全站数据
8 4 2 0 5 8 1

结构体struct前面加typedef和不加typedef的区别

广锐路桥工程材料 | 简单学习,快乐成才!         
问题更新日期:2024-10-12 16:59:03

问题描述

结构体struct前面加typedef和不加typedef的区别,麻烦给回复
精选答案
最佳答案

用typedef后, 后面的语句的语义就改变了,用typedef定义类型别名,这个别名和类型一样使用,struct S{int i;} a,b; 定义结构 S和S的变量a,btypedef struct S{int i;} a,b;这里除了定义结构S,又起了别名a和b,a和b位置的标识符就都是别名而不是变量a和b也像类型一样用来定义结构变量因为起了别名 所以不起结构名也没问题 typedef struct {int i;} a;一般用typedef同时定义结构类型,和结构指针类型typedefstruct_s {int i;} s,*ps;s a;ps p=&a;