我需要通过Call by Reference,
返回值#include<stdio.h>
#include<conio.h>
#include<math.h>
int Splitting(int *,int);
int main()
{
int x = 1234567891,x1=x,a1,b1,count=0;
a1=Splitting(&x,count);
b1=x;
printf("a1=%d,b1=%d",a1,b1);
}
int Splitting(int *x,int count)
{
int x1=*x,x2, a = 0, b = 0, a1 = 0, b1 = 0;
/**Some code logic used**/
a1=12345,b1=67891;
x1 =(int *) a1;
return b1;
}
我需要返回值a1
,b1
。
其中b1通过return语句和a1
通过引用调用。所以我需要设置值x1=a1;
它不起作用。
请建议。
答案 0 :(得分:4)
当您在代码中指定x1
时,您正在分配x
而不是
x1 =(int *) a1;
写
*x = a1;