通常操作数组的时候,你发送的实参就是数组的首地址;所以直接void类型就可以;但是如果一定要设返回值的话;直接把形参接收的首地址返回就可以了!
你的代码中,有很大的问题;如果是的代码中这样设定要想不出问题,那么那个数组要在堆中分配;即malloc一块地址;
其次,int paixu() 改成int *paixu();
再次;return arr;就可以
如果你的程序需要作为接口给别人的,那么你这个写法显然是不对的;因为别人不知道怎么解析你这个接口返回的地址;知道是数组也不知道数组的元素个数!
再说你这个冒泡排序;也出问题了!j不会递增,也就是当执行到里面的循环后就是个死循环!
追问又改了一下 如果是int *paixu(int *s, int n) 在上边的话它提示说b = paixu(a,5); 不接受两个参数, 如果把int *paixu(int *s, int n) 放了int main() 下边就可以 这是为啥??
追答没有看懂你说的意思!你重新贴图的这张;函数的声明与实现是不同的,自己没有发现吗
本回答被提问者采纳