暗黙的な関数宣言

サブルーチンまたは組み込み関数が宣言なしで呼び出されました。

通常、これは、このサブルーチンを宣言するヘッダーファイルがインクルードされなかったことを示します。サブルーチンが宣言なしで使用されると、C および FORTRAN コンパイラーの多くは、"整数値を返す関数" として暗黙的な宣言を生成します。暗黙的な宣言が実際の定義と異なる場合、コンパイラーは正しくないコードを生成する可能性があるため、これはよくエラーの原因となります。

ID

問題箇所

説明

1

呼び出し位置

暗黙的な宣言の元となった呼び出し

          
#include <stdio.h>

// Note no #include for <math.h> !

int main(int argc, char **argv)
{
    // sin is not declared, so compiler assumes int sin();
    // next assignment converts "int" return value to double,
    // leading to unexpected result
    double d = sin(1.0);
    printf("sin(1) = %f\n", d);
    return 0;
}
        

© 2010 Intel Corporation. 無断での引用、転載を禁じます。