(结构中的指针)

本文深入探讨了C语言中结构体与指针的高级应用,通过实例讲解了如何利用指针进行结构体的输入和输出,以及如何在函数间传递结构体变量。文章详细解释了指针在结构体操作中的灵活性,展示了如何使用指针来修改结构体成员,并提供了完整的代码示例。
摘要由CSDN通过智能技术生成
/*输入结构
结构中的指针,灵活运用指针传递值*/
#include <stdio.h>

struct point{
	int x;
	int y;
};

struct point* getStruct(struct point*);
void output(struct point);
void printf(const struct point *p);

int main(int argc,char const *argv[]){
	struct point y={0,0};
	getStruct(&y);
	output(y);
	output(*getStruct(&y));//*用于取出右边的指针所指的那个变量 ,而现在这个指针是get的返回值 
	print(getStruct(&y));//把从get里面得到的东西打印出来 :get得到的东西可以直接作为参数 
}

struct point* getStruct(struct point *p){
	scanf("%d",&p->x);
	scanf("%d",&p->y);
	printf("%d,%d\n",p->x,p->y);
	return p;
}

void output(struct point p){//output要的是结构本身而不是指针 
	printf("%d,%d\n",p.x,p.y);
}

void printf(const struct point *p){//const代表不改变这个指针 
	printf("%d,%d",p->x,p->y);
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值