我按照老师的代码写,结果怎么不对??

来源:2-1 Linux C语言 初始指针

此号已注销_kpsvyL

2019-08-18 16:12

#include "stdio.h"

void change(int *a,int *b)

{

int temp;

temp=*a;

*a=*b;

*b=temp;

}

int main()

{

int a=5;

int b=1;

change(&a,&b);

printf("numa=%d,numb=%d",change);

}

---------------------------------------------------结果为 

numa=4198435

numb=4198800

Press any key to continue


写回答 关注

1回答

  • 此号已注销_kpsvyL
    2019-08-18 16:17:44

    -- 我看错了---

    -----哦哦我看错了现在正确了

    ----但是为什么输入里面不能写change?

    -----还有为什么输入里面printf("numa=%d,numb=%d",a,b);  a和b前面不用加&了?

    qq_慕仔9...

    应该是因为change里的a和b没有赋值,下面main里的a和b可以换成a1,和a2(也就是代替change的a和b),结果不影响,所以不能用change。 因为change(&a,&b);这不是已经用了,不用多此一举。(我也是个半吊子如果对你有帮助望采纳,如果有误,欢迎纠正)

    2021-07-30 10:01:38

    共 1 条回复 >

Linux C语言指针与内存

指针-C语言的核心,代领大家对c语言有更加深刻的理解

116475 学习 · 250 问题

查看课程

相似问题