C语言参数传递,该怎么处理
C语言参数传递
#include <stdio.h>
#include <stdlib.h>
void abc(int e)
{
e = 123;
}
main()
{
auto e=456;
abc(e);
printf("%d",e);
}
这个程序我想输出的最终结果是123,请问怎么修改,谢谢!
------解决思路----------------------
------解决思路----------------------
int abc(int &e);
------解决思路----------------------
printf("123");
------解决思路----------------------
------解决思路----------------------
C++还是C
C
++
赵老师这个就是
C++
------解决思路----------------------
对源代码后缀为.cpp的文件,才默认用C++语法编译。
------解决思路----------------------
要想改变实参的值,必须把实参的指针地址作为函数参数传过去,而不是单单将值传过去。否则实参不会改变。
#include <stdio.h>
#include <stdlib.h>
void abc(int e)
{
e = 123;
}
main()
{
auto e=456;
abc(e);
printf("%d",e);
}
这个程序我想输出的最终结果是123,请问怎么修改,谢谢!
------解决思路----------------------
#include <stdio.h>
int abc(int e);
int main(void)
{
int e = 456;
e = abc(e);
printf("%d", e);
}
int abc(int e)
{
int e = 123;
return e;
}
------解决思路----------------------
int abc(int &e);
------解决思路----------------------
printf("123");
------解决思路----------------------
#include <stdio.h>
#include <stdlib.h>
void abc(int *e)
{
*e = 123;
}
main()
{
auto e=456;
abc(&e);
printf("%d",e);
}
------解决思路----------------------
C++还是C
C
++
赵老师这个就是
C++
#include <stdio.h>
#include <stdlib.h>
void abc(int &e)//改成引用传递
{
e = 123;
}
main()
{
auto e=456;
abc(e); //引用传递的调用方式和值传递相同
printf("%d",e);
}
------解决思路----------------------
对源代码后缀为.cpp的文件,才默认用C++语法编译。
------解决思路----------------------
要想改变实参的值,必须把实参的指针地址作为函数参数传过去,而不是单单将值传过去。否则实参不会改变。