coco1312 2015-09-10 03:38 采纳率: 0%
浏览 1987
已采纳

C语言结构体b指向结构体变量a的地址了,为何最终结果没有修改a成员的值呢?

include

include

typedef struct stu
{
char name[10],gender;
int score;
}STU;
void f(char *p)
{
strcpy(p,"Qian");
}
main()
{
STU a={"zhao",'m',290},b;b=a;
f(b.name);
b.gender='f';
b.score=350;
printf("%s,%c,%d,",a.name,a.gender,a.score);
printf("%s,%c,%d,",b.name,b.gender,b.score);

}
/*
1.程序运行结果为:
zhao,m,290,Qian,f,350,
=======b=a;---b指向结构体变量a的地址了,然后给b变量成员赋值,为何最终结果没有修改a成员的值呢?
*/

  • 写回答

5条回答 默认 最新

  • yangbo50304 2015-09-10 06:35
    关注

    小伙子,你指针没学好啊,跟我大学时候一样,对指针没概念。
    STU a={"zhao",'m',290},b;b=a;这样的定义是拷贝;虽然你没有定义拷贝构造函数,但是都是基本类型,所以copy是成功的。

    STU a={"zhao",'m',290},*b;b=&a;这样叫指针。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示