簡體   English   中英

使用宏但隱含聲明 function 錯誤

[英]Use of macros but had implicit declaration of function error

我正在嘗試運行以下代碼,但我無法編譯它,因為我的 IDE 抱怨以下原因。

H:\C\sandBox.c|11|警告:隱式聲明 function 'RECIPROCAL'|

我不知道為什么我的代碼不起作用。 你能幫忙嗎?

#include <stdio.h>
# RECIPROCAL(number) (1.0 / (number))

int main()
{
    float   counter;    /* Counter for our table */

    for (counter = 0.0; counter < 10.0;
     counter += 1.0) {

        printf("1/%f = %f\n", counter, RECIPROCAL(counter));
    }
    return (0);
}

那是因為您需要使用#define來定義預處理器宏。

改變:

# RECIPROCAL(number) (1.0 / (number))

#define RECIPROCAL(number) (1.0 / (number))

你忘了define

#define RECIPROCAL(number) (1.0 / (number))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM