gpt4 book ai didi

c - 如何调用简单的 Bool 函数并打印

转载 作者:行者123 更新时间:2023-11-30 17:12:13 27 4
gpt4 key购买 nike

我正在尝试学习如何调用函数和使用 boolean 值。尝试通过调用 bool 函数来运行一个小测试,如果输入数字小于 50,则该函数为 true。但是我收到一条错误,指出该函数缺少参数列表(无论是什么)。非常感谢任何关于我做错了什么的建议。谢谢你!

C4550:表达式计算结果为缺少参数列表的函数。

错误指向我在 main 中调用 bool 函数的位置。

#include <stdlib.h>
#include <stdio.h>
#include <stdbool.h>

bool ValidInput(int number1);
int number1;

int main(void)
{
printf("Enter number: ");
scanf("%d", &number1);

if (ValidInput == true)
printf("VALID INPUT\n");
}

bool ValidInput(int number1)
{
if (number1 < 50)
return true;

return false;
}

最佳答案

在此 if 语句中

if (ValidInput == true)
{
printf("VALID INPUT");
}

您正在将函数指针 ValidInput 与 true 进行比较。

但是您的目的是将函数调用的结果与 true 进行比较。所以这样写

if (ValidInput( number1 ) == true)
^^^^^^^^^^^
{
printf("VALID INPUT");
}

这样写会更安全

if ( ValidInput( number1 ) )

而不是

if (ValidInput( number1 ) == true)

函数本身也可以写得更简单

bool ValidInput(int number1)
{
return number1 < 50;
}

考虑到不需要像全局变量一样声明变量number1。并且函数 main 应该使用参数列表 void 进行声明。你应该写

int main( void )
{
int number1;
//...

关于c - 如何调用简单的 Bool 函数并打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31696487/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com