用vs2013,做C程序出现的问题,bool”类型的实参与“const char*”类型的形参不兼容

时间:2022-02-05 20:17:25
网上去找过方法呢都没用,求解答
bool”类型的实参与“const char*”类型的形参不兼容


程序如下
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
FILE*fp;
char str[3][10],temp[10];
int i,j,k,n=3;
printf("enter stringsz:\n");
for(i=0;i<n;i++)
gets(str[i]);
for(i=0;i<n-1;i++)
{k=i;
for(j=i+1;j<n;j++)
if(strcmp(str[k], str[j] >0))k=j;
}
}



就是这个str出现了问题,不知道怎么解决

2 个解决方案

#1


if( strcmp( str[k], str[j] ) > 0 ) k=j;
看清楚括号配对

#2


括号问题,你代码先比较str[j]>0 得到的bool值才作为参数

改成:

if(strcmp(str[k],str[j])>0)k=j;

#1


if( strcmp( str[k], str[j] ) > 0 ) k=j;
看清楚括号配对

#2


括号问题,你代码先比较str[j]>0 得到的bool值才作为参数

改成:

if(strcmp(str[k],str[j])>0)k=j;