使用指针从函数返回一个数组/结构体

这篇博客主要讲解了C语言中关于指针和结构体的应用,包括如何返回一个结构体以及动态分配内存给包含20个int元素的数组。示例代码展示了如何使用指针变量存储结构体,并通过指针操作数组元素。同时,还涉及了错误处理,如内存分配失败的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include<stdio.h>
#include<stdlib.h>
int (*paf())[20];
struct a_tag {
	int array[20];
}x,y;
/*返回一个结构体*/
struct a_tag my_function() {
	printf("good good study\n");
	return y;
};

int main() {
	int(*result)[20];/*声明一个指向包含20个int元素的数组的指针*/
	result = paf();
	for (int i = 0; i < 5; i++)
		printf("%d\n", (*result)[i] = i);
	/*struct*/
	x = y;
	x = my_function();
	for (int j = 0; j < 5; j++)
	printf("%d\n", x.array[j] = j);
}
/*返回一个指向包含20个int元素的数组的指针*/
int(*paf())[20]{
	int (*pear)[20];
pear =new int[1][20];
if (!pear) printf("error");
return pear;
}

                                        如有问题,欢迎评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

入世浮尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值