c语言之结构体数组数据传递

1,在项目开发过程中,数据之间的传递是必不可少的,当我们需要传递一个数据的时候,我们只需要定义一个变量就可以了,那么当我们需要传递一组数据且多次传递时我们需要怎么做呢,我们使用结构体数组可以实现,在这里我举例说明一下:

#include
#include

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(index);
		printf("get_sheild[0].poll = %d,get_sheild[0].sheild = %d\n",get_sheild[index].poll,get_sheild[index].shei

你可能感兴趣的:(c语言基础)