我是靠谱客的博主 背后哈密瓜,这篇文章主要介绍c语言自动分析结构体成员,C语言结构体struct:声明、定义、函数成员,现在分享给大家,希望可以做个参考。

/*

一个简单的演示C语言结构体struct的例子。

struct中也可以包含函数成员,通过函数指针的形式。

*/

#include

#include

typedef struct Point

{

double x;

double y;

double (*R)(double x0,double y0);//函数成员,计算到原点的距离;

double (*R2)(struct Point p); //函数成员,计算到原点的距离;

}StructPoint,*pPoint;//声明struct函数体的同时,给其设置别名(alias):

//StructPoint为结构体别名,pPoint为Point*类型别名;

//第二种给struct设置别名的方法;

//typedef struct Point StructPoint;

double DistanceToO(double x, double y)

{

return sqrt(x*x+y*y);

}

double DistanceToO2(StructPoint p)

{

return sqrt(p.x*p.x+p.y*p.y);

}

int main(int argc,char* argv[])

{

StructPoint p0;

p0.x=3;

p0.y=4;

p0.R=DistanceToO; //给对象指定函数

p0.R2=DistanceToO2; //给对象指定函数

printf("p0(%.2f,%.2f) to O:%.2fn",p0.x,p0.y,p0.R(p0.x,p0.y));

printf("Method-2:p0(%.2f,%.2f) to O:%.2fn",p0.x,p0.y,p0.R2(p0));

pPoint pp0=&p0;

printf("pp0(%.2f,%.2f) to O:%.2fn",pp0->x,pp0->y,pp0->R(pp0->x,pp0->y));

//定义struct同时给其赋值

StructPoint p1={6,8,DistanceToO,DistanceToO2};

printf("p1(%.2f,%.2f) to O:%.2fn",p1.x,p1.y,p1.R(p1.x,p1.y));

return 0;

}

最后

以上就是背后哈密瓜最近收集整理的关于c语言自动分析结构体成员,C语言结构体struct:声明、定义、函数成员的全部内容,更多相关c语言自动分析结构体成员内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(114)

评论列表共有 0 条评论

立即
投稿
返回
顶部