各位大佬帮我看下c语言的问题|warning: statement with no effect [-Wunused-value]|

#include <stdio.h>#include <stdlib.h>int odd_num(int *a,int i,int n){ int j; int temp; for(j=0; j<n; j++) { if(j==i) { temp=a[j]; return temp; } } return 0;}void output_odd_even_dispart(int *a,int n){ int i=0,j=0; int m=odd_num(a,i,n); for(i=0;i<n;i++) { for(j=1;j<m;j+2) { printf("%d ",j); } printf("\n"); for(j=2;j<=m;j+2) { printf("%d ",j); } printf("\n"); }}int main(){ int n; scanf("%d",&n); int i; int *a=(int *)malloc(sizeof(int)*n); for(i=0; i<n; i++) { scanf("%d",&a[i]); } output_odd_even_dispart(a,n); free(a); return 0;}

今天写了一个取得一段字符串中前2个空格的位置的函数,结果编译的时候提示:
warning: statement with no effect
程序代码:
int findspace(int *n1,int *n2,const char *cmds)
{
int i=0;
*n1=0;
*n2=0;
for(i;i<strlen(cmds);++i)
{
if(*(cmds+i) ==' ')
{
*n1=++i;
break;
}
}
for(i;i<strlen(cmds);++i)
{
if(*(cmds+i) ==' ')
{
*n2=++i;
break;
}
}
return 0;
}
警告出现在在两个for语句那,我的gcc -v =4.4.1
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-11-24

for(j=1;j<m;j+2)

j+2是没有任何效果的语句

追问

要怎么改呢?

追答

j+=2

本回答被提问者采纳
相似回答