gpt4 book ai didi

c - 警告 : Undefined reference to function

转载 作者:行者123 更新时间:2023-11-30 18:30:52 35 4
gpt4 key购买 nike

我不断收到警告,说我的函数有一个 undefined reference ,这对我来说并没有太多意义,也没有说明如何修复它。以下是错误信息

log_2.c: In function ‘main’: log_2.c:29: warning: implicit declaration of function ‘logbase2’ /tmp/ccAXAmVb.o: In function 'main': log_2.c:(.text+0x5e): undefined reference to `logbase2' collect2: ld returned 1 exit status

这是我的代码:

int logbasetwo (int number)
{
int test;
for (int i = 0; i< number; i++){
test = 2 ^ i;
int result = i;
}


return result;
}

int main(){

printf("Enter a positive integer: ");
int number = get_int();
int logresult;
if (number > 0){
logresult=logbase2(number);

}


else (number < 0){
printf("Not a positive number. Re-enter: ");
number = get_int();

}

printf("Log base two of number is:%i", logresult);


}


return 0;
}

最佳答案

嗯,在你的代码中,同时使用了logbase2()logbasetwo(),它们不一样!!!

您定义了一个名为 logbasetwo() 的函数,但您调用了 logbase2()

更改其中一个以匹配另一个。

此外,您还需要更改逻辑test = 2 ^ i;。正如@Bathsheba先生之前的评论中提到的,^运算符用于XOR,而不是求幂。

您需要使用pow() .

关于c - 警告 : Undefined reference to function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28365782/

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