C语言中,怎样使结构体字符串指针的数据替换?
2个回答
展开全部
#include<stdio.h>
#include<stdlib.h>
typedef struct
{
char *m_szNum;
char *m_szName;
char *m_szTel;
}Student;
Student a={"a","b","c"},b={"d","e","f"};
void disp(Student x)
{
printf("szNum:%s\nszName:%s\nszTel:%s\n",x.m_szNum,x.m_szName,x.m_szTel);
}
void swap(char **x,char **y)
{
if(*x==*y)return;
char *t=*x;
*x=*y,*y=t;
}
void swapS(Student *x,Student *y)
{
swap(&x->m_szNum,&y->m_szNum);
swap(&x->m_szName,&y->m_szName);
swap(&x->m_szTel,&y->m_szTel);
}
int main()
{
disp(a),disp(b);
puts("-----------");
swapS(&a,&b);
disp(a),disp(b);
system("pause");
return 0;
}
希望对你有帮助
#include<stdlib.h>
typedef struct
{
char *m_szNum;
char *m_szName;
char *m_szTel;
}Student;
Student a={"a","b","c"},b={"d","e","f"};
void disp(Student x)
{
printf("szNum:%s\nszName:%s\nszTel:%s\n",x.m_szNum,x.m_szName,x.m_szTel);
}
void swap(char **x,char **y)
{
if(*x==*y)return;
char *t=*x;
*x=*y,*y=t;
}
void swapS(Student *x,Student *y)
{
swap(&x->m_szNum,&y->m_szNum);
swap(&x->m_szName,&y->m_szName);
swap(&x->m_szTel,&y->m_szTel);
}
int main()
{
disp(a),disp(b);
puts("-----------");
swapS(&a,&b);
disp(a),disp(b);
system("pause");
return 0;
}
希望对你有帮助
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询