[英]How to compile C program without using limits.h header file in GCC?
我在 C 中做了一個計算器,現在,我想編譯我的程序而不使用限制 header 文件在 GCC 中。 但我不知道怎么做。
這是我的程序源代碼:
int printf(const char *format, ...);
int scanf(const char *format, ...);
int main()
{
double num1, num2, r;
char ch;
do
{
scanf("%lf", &num1);
scanf("%lf", &num2);
printf("\ta - Add\n\tb - Substract\n\tc - Multiply\n\td - Divide\n");
scanf(" %c", &ch);
switch (ch)
{
case 'a':
r = num1 + num2;
printf("%lf + %lf = %f\n", num1, num2, r);
break;
case 'b':
r = num1 - num2;
printf("%lf - %lf = %f\n", num1, num2, r);
break;
case 'c':
r = num1 * num2;
printf("%lf * %lf = %f\n", num1, num2, r);
break;
case 'd':
r = num1 / num2;
if (num1 > 0 & num2 == 0 | num1 == 0 & num2 == 0)
{
printf("Undefined\n");
}
else
{
printf("%lf / %lf = %f\n", num1, num2, r);
}
break;
default:
printf("Invalid\n");
}
}
while (1);
}
我用gcc Program.c -o ConsoleCalculator1
編譯了我的程序。
#ifndef TEST
#include<limits.h>
#endif
然后,在編譯期間使用-D
標記作為:
gcc -DTEST -Wall file-name.c -o file-exec
使用-D
定義宏 TEST,因此它不會包含limits.h
如果要包含limits.h
,則不要定義宏 TEST (不要使用-D
編譯器選項)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.