用C写 我已经在主函数->
中使用了这个if循环if(islower(ch))
我发现错误
:warning :implicit declaration of function 'islower'
if(islower(ch))
为什么会这样?
答案 0 :(得分:1)
您需要包含ctype.h,如下所示:
#include <ctype.h>
此头文件声明函数islower
:
int islower(int c);
答案 1 :(得分:0)
在定义函数之前调用函数时,会出现此类错误。考虑以下代码:
int main()
{
char ch= 'a';
if (islower(ch))
{
ch = ch - 32; // difference of ascii values between upper and lower case is 32
}
printf("%c ", ch);
return 0;
}
int islower(char ch)
{
if ('a' <= ch && ch <= 'z')
return 1;
else
return 0;
}
由于定义之前您正在调用islower()
函数,您将得到该错误。因此,只需在调用之前给出函数的原型即可。您可以按如下所示在主行之前添加int islower(char);
行。
int islower(char);
int main()
{
char ch= 'a';
if (islower(ch))
{
ch = ch - 32; // difference of ascii values between upper and lower case is 32
}
printf("%c ", ch);
return 0;
}
int islower(char ch)
{
if ('a' <= ch && ch <= 'z')
return 1;
else
return 0;
}
这肯定可以解决您的问题。希望这对您有所帮助。让我知道是否还有其他需要。