[求助]此处如何调用 F 函数,
#include <stdio.h>void f(int *a,int *m)
{ int i,j;
for(i=0;i<*m;i++)
if(a[i]<0) {
for(j=i--;j<*m-1;j++) a[j]=a[j+1];
*m=j ; //这句代码怎么解释
}
}
void main()
{ int i,n=7,x[7]={1,-2,3,4,-5,6,-7};
f(x,7); //这样为什么通不过啊 // 这里要调用 F 函数 该怎么写啊
for(i=0;i<n;i++) printf("%5d",x[i]);
printf("\n");
}
[此贴子已经被作者于2007-11-9 14:55:26编辑过]
搜索更多相关的解决方案:
函数
----------------解决方案--------------------------------------------------------
f(x,&n);要传两个地址
----------------解决方案--------------------------------------------------------
f(x,&n);
[此贴子已经被作者于2007-11-9 14:53:04编辑过]
----------------解决方案--------------------------------------------------------
f函数是去掉数组中的负数....我刚才写错加进去的代码了.....已经改为
if(a[i]<0) {
for(j=i--;j<*m-1;j++) a[j]=a[j+1];
*m=j ;}
不过看不懂 *m=j; 谁能帮我解释下啊
----------------解决方案--------------------------------------------------------
以下是引用nianshi在2007-11-9 14:22:52的发言:
f(x,&n);要传两个地址
f(x,&n);要传两个地址
恩,知道了,谢谢
----------------解决方案--------------------------------------------------------
m是一个指针变量.指针变量是指向内存地址...*是取值符...
----------------解决方案--------------------------------------------------------