在结构体使用中,一直打struct会很麻烦,比如下面求两点之间的连线距离:
struct Point {double x,y;};
double dist(struct Point a,struct Point b)
{
return (a.x-b.x,a.y-b.y);
}
在c语言中,定义结构体的方法为“struct 结构体名词{域定义};”注意花括号后面还有一个分号。
所有用到Point的地方都需要写一个struct。
用以下方法可以避开struct,让结构体用起来和int,double这样的原生类型更为接近。
typedef struct {double x,y;} Point;
double dist(Point a,Point b)
{
return hypot(a.x-b.x,a.y-b.y);
}
为了使用方便,往往用“typedef struct{域定义;}类型名;”的方式定义一个新类型名。这样,就可以想原生数据类型一样使用这个自定义的类型。
本文介绍了如何使用typedef在C语言中简化结构体的使用,避免在每个实例中都写struct关键字。通过typedef定义新的类型名,可以使自定义结构体像基本数据类型一样方便。示例中展示了如何定义一个Point结构体,并用于计算两点之间的距离。
938

被折叠的 条评论
为什么被折叠?



