我是靠谱客的博主 背后哈密瓜,最近开发中收集的这篇文章主要介绍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语言自动分析结构体成员,C语言结构体struct:声明、定义、函数成员所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部