При попытке отладки программы isPrime я начал сталкиваться с предупреждением, которое не позволило бы мне запустить программу. Предупреждение гласит Relocation truncated to fit: R_X86_64PC32 against undefined symbol "isPrime(int)"
. Я столкнулся с этой проблемой некоторое время назад, но с тех пор забыл, как именно с ней бороться. Это проблема с программой, которая обычно вызывает это, или проблема с netbeans и компилятором, который он использует для C.
#include <stdio.h>
#include <stdbool.h>
bool isPrime(int userInput);
int main(int argc, char** argv)
{
int userInput;
bool prime = false;
int again = 0;
printf("This program will check if a number is Prime\n");
while(again == 0)
{
printf(" Enter number: \n ");
scanf("%d",&userInput);
prime = isPrime(userInput);
if( prime )
printf("%d is prime.",userInput);
else
printf("%d is not prime",userInput);
printf("again? \n 0 for yes \n 1 for no");
scanf("%d", &again);
}
return 0;
}
bool isPrime(int userInput)
{
int tmp = 0;
bool result = true;
while(tmp != 1 && result == true)
{
if( userInput % tmp == 0)
result = false;
tmp--;
}
return true;
}
\
Код был отредактирован