サブルーチンまたは組み込み関数が宣言なしで呼び出されました。
通常、これは、このサブルーチンを宣言するヘッダーファイルがインクルードされなかったことを示します。サブルーチンが宣言なしで使用されると、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. 無断での引用、転載を禁じます。