int *fun(int n)
{
int m;
static int nm[2]; // 用数组存放返回的2个值
if (n>=0)
{
if (n==0) {m=0;} else m=1;
}
else m=-1;
nm[0] = n;
nm[1] = m;
return nm; // 返回指针
}
int main (void)
{
int *nm;
int n=3;
nm = fun(n); // 调用
printf("%d %d\n",nm[0],nm[1]);
}
C++ 一样的,把输出语句换 cout << ....
一般函数不能返回两个值吧,如果要修改n和m的值,在传参数的时候加个引用就行了
南开百题吧 主函数定义数组就可以解决了 然后传入首地址到函数 把2数存起来就行了
ycsxm 回答正解,用引用返回额外信息!!
int fun(int & n)
{
if (n>=0)
{
if (n==0)
{
m=0;
}
else m=1;
}
else m=-1;
return (m);
}
// n 用成参数