c语⾔之结构体数组数据传递
1,在项⽬开发过程中,数据之间的传递是必不可少的,当我们需要传递⼀个数据的时候,我们只需要定义⼀个变量就可以了,那么当我们需要传递⼀组数据且多次传递时我们需要怎么做呢,我们使⽤结构体数组可以实现,在这⾥我举例说明⼀下:
#include<stdio.h>
#include<string.h>
typedef struct poll_sheild
{
char poll;
char sheild;
}POLL_SHEILD;
POLL_SHEILD g_psheild[2];
void reg_psheild(POLL_SHEILD* vpsheild,int num)
{
memcpy(g_psheild+num,vpsheild+num,sizeof(POLL_SHEILD));
}
POLL_SHEILD get_psheild(int num)
{
结构体数组不能作为参数传递给函数POLL_SHEILD m_sheild;
memcpy(&m_sheild,g_psheild+num,sizeof(POLL_SHEILD));
return m_sheild;
}
int main()
{
POLL_SHEILD my_sheild[2] ={
{1,2},{2,2}};
POLL_SHEILD get_sheild[2];
reg_psheild(my_sheild,0);
get_sheild[0] =  get_psheild(0);
printf("get_sheild[0].poll = %d,get_sheild[0].sheild = %d\n",get_sheild[0].poll,get_sheild[0].sheild);
for(int index = 0; index<2;index++)
{
reg_psheild(my_sheild,index);
get_sheild[index] =  get_psheild(i

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。