C++ での Pow への未定義参照の解決
このエラー メッセージに対処する場合は、「pow()」関数が宣言されているヘッダー ファイルをコードに追加するだけです。これにより、コードからエラーが削除されます。 「pow()」関数で使用されるヘッダー ファイルは次のとおりです。
- #include
ヘッダー ファイル - #include
ヘッダー ファイル - #include
ヘッダー ファイル
このエラーがどのように発生するか、および C++ プログラミングでこのエラーに対処する方法を示すいくつかのコードを次に示します。
例 1:
最初の例では、入出力タスクの実行を支援する「#include
この後、ここで「int main()」関数を呼び出します。これは、C++ コードの開始を定義するために利用されます。この関数では、指定された情報を表示画面に出力するのに役立つ「cout<<」ステートメントを利用します。 「<< endl」ステートメントは、ポインタを新しい行に移動するために使用されます。
この後、「pow()」関数が使用され、base と exponent という 2 つのパラメータを渡す必要があります。ここでは、「10, 4」を追加します。「10」は基数、「4」は指数です。このコードの最後に、「return 0」というステートメントをもう 1 つ挿入します。
コード 1:
#includeを使用して 名前空間 標準 ;
整数 主要 ( ) {
コート << 「ここではべき乗関数を利用します」 ;
コート << 終わり << 終わり ;
コート << 捕虜 ( 10 、 4 ) ;
戻る 0 ;
}
出力:
コードが完成したら、コンパイルして実行する必要があります。前のコードをコンパイルすると、「pow はこのスコープで宣言されていません」というエラー メッセージが表示されます。このエラーは、この「pow()」関数が宣言されているヘッダー ファイルを追加していないために表示されます。このエラーを解決するには、前述したヘッダー ファイルのいずれかを挿入する必要があります。
ここで、結果を取得するには、このエラーを解決する必要があります。このために、コードに少し変更を加えました。同じコードで、「」ヘッダー ファイルの後に「#include 」ヘッダー ファイルを追加します。 「pow()」関数がこのヘッダー ファイルで宣言されているため、これは前のコードのエラーを取り除くのに役立ちます。
更新されたコード 1:
#include#include
を使用して 名前空間 標準 ;
整数 主要 ( ) {
コート << 「ここではべき乗関数を利用します」 ;
コート << 終わり << 終わり ;
コート << 捕虜 ( 10 、 4 ) ;
戻る 0 ;
}
出力 :
この更新されたコードはコンパイルされて正常に実行され、コードの出力が得られます。前のコードのエラーは削除され、コンパイル後に次の結果が表示されます。
例 2:
ここでは、C++ での別の例を示します。 「
コード 2:
#includeを使用して 名前空間 標準 ;
整数 主要 ( )
{
コート << 「私たちはここ C++ プログラミングで数値の力を見つけています。」 << 終わり << 終わり ;
整数 1つには、 経験値 、 結果 ;
1つで = 25 ;
経験値 = 2 ;
結果 = 捕虜 ( 1つには、 経験値 ) ;
コート << 「その数のべき乗は = 」 << 結果 ;
コート << 終わり ;
戻る 0 ;
}
出力 :
この新しいコードでは、前の例と同じエラー メッセージが表示されます。理由は、この「pow()」関数を取得するためのヘッダーファイルを挿入していないためでもあります。
ここで、ヘッダー ファイル「cmath」ヘッダー ファイルをコードに追加します。このヘッダー ファイルは、コードの「pow()」関数を取得するために C++ プログラミングで使用されます。 「#include 」ヘッダー ファイルを追加すると、コードの必要な出力が得られます。
例 3:
ここで、もう 1 つの例があります。ここでは、「main()」関数の後に「long double」データ型の「base_num」を「4.5」で宣言し初期化しています。次に、「integer」データ型の「expo_num」も「-2」で宣言して初期化します。また、「long double」データ型の「result_1」という名前の変数をもう 1 つ宣言します。
ここで、「pow()」関数を使用して「result_1」変数を初期化し、「base_num」と「expo_num」をこの関数に渡します。この後、「cout」コマンドを使用して結果を出力します。次に、さらに 2 つの変数「f_baseNum」と「f_expoNum」を「float」データ型で宣言して初期化します。それぞれ「-9.2」と「5」で初期化します。次に、「result_2」を「double」データ型として宣言します。次に、「pow()」メソッドを使用して「result_22」変数を初期化し、「f_baseNum」と「f_expoNum」を渡します。次に、「cout」コマンドを使用して結果を出力します。
コード 3:
#includeを使用して 名前空間 標準 ;
整数 主要 ( ) {
長さ ダブル 基数_num = 4.5 ;
整数 expo_num = - 2 ;
長さ ダブル 結果_1 ;
結果_1 = 捕虜 ( Base_num、expo_num ) ;
コート << 'ここでのbase_numはlong double型であり、expo_numは整数型です' << 終わり << 終わり ;
コート << 基数_num << 「^」 << expo_num << 「=」 << 結果_1 << 終わり << 終わり ;
浮く f_baseNum = - 9.2 、f_expoNum = 5 ;
ダブル 結果_2 ;
結果_2 = 捕虜 ( f_baseNum、f_expoNum ) ;
コート << 'ここでの f_baseNum は float 型で、f_expoNum は double 型です。' << 終わり << 終わり ;
コート << f_baseNum << 「^」 << f_expoNum << 「=」 << 結果_2 ;
戻る 0 ;
}
出力 :
このコードをコンパイルすると、べき乗関数がこのスコープで宣言されていないことを示すエラー メッセージが表示されます。これは、この関数が宣言されているヘッダー ファイルが見つからなかったことを意味します。
このエラーは、「
これを配置すると、コードは正常にコンパイルされ、ここにも示されているコードの出力が得られます。
別のヘッダー ファイル「
「
結論
この記事では、C++ プログラミングにおける「pow への未定義の参照」または「pow はこのスコープで宣言されていません」というエラーについても詳しく説明します。また、コードを正常にコンパイルするためのエラーを削除するのに役立つ方法やヘッダー ファイルについても調査しました。エラー メッセージとそのエラー メッセージを削除した後のコードの結果を示す例を示しました。