我寫了一個簡單的程序fabs.c
來顯示浮點數的絕對值。爲什麼fabs()在編譯GCC時不需要-lm選項
#include <stdio.h>
#include <math.h>
int main(void)
{
float f;
printf("Enter a floating-point number: ");
scanf("%f", &f);
printf("Its absolute value is %f.\n", fabs(f));
return 0;
}
晶圓廠()函數需要包括math.h
頭文件,但我不-lm
選項編譯成功。
gcc fabs.c -o fabs
即使man fabs
說link with -lm
。但我不知道爲什麼我可以在沒有-lm
的情況下成功編譯它。
海灣合作委員會內聯函數的一些內置版本。嘗試'-fno-builtin-fabs'。 –
@MarcGlisse謝謝,雖然我不確切知道內聯的含義。 – LinuxBabe
https://en.wikipedia.org/wiki/Inline_expansion –