論理エラー

論理エラー(またはロジックエラー)とは、プログラムのソースコードにある間違いによって、誤った動作や予期しない動作が発生することです。これは実行時エラーの一種で、単に間違った出力を生成する場合もあれば、実行中にプログラムがクラッシュする場合もあります。

さまざまな種類のプログラミング上の間違いによって、論理エラーが発生する可能性があります。たとえば、間違った変数に値を代入すると、予期しないプログラムエラーが次々に発生することがあります。2つの数値を足し合わせる代わりに掛け合わせても、望ましくない結果になる可能性があります。構文エラーを発生させない小さなタイプミスでさえ、論理エラーの原因になることがあります。次のPHPコード例では、1つの等号(=)ではなく2つの等号(==)を使うべきなので、if文によって論理エラーが発生する可能性があります。

誤り: if ($i=1) { ... }

正しい例: if ($i==1) { ... }

PHPでは、「==」は「等しい」を意味し、「=」は「なる」を意味します。そのため、間違ったif文は、変数$iに1を代入するとTRUE値が返されるため、常にTRUEを返します。正しいコードでは、$iが1と等しい場合にだけif文がTRUEを返します。ただし、間違ったコードの構文は正しいため、構文エラーは発生せず、コードは正常にコンパイルされます。論理エラーは実行時に初めて気付くことがあります。論理エラーはソースコード内に隠れていることが多いため、構文エラーよりも見つけにくく、デバッグも難しいのが一般的です。

更新日 April 27, 2012 著者: Per C.

quiz知識をテストする

For what purpose do software developers use the Vulkan API?

A
Rendering 3D graphics
0%
B
Controlling smarthome devices
0%
C
Accepting input from game controllers and other devices
0%
D
Sending messages over a network
0%
Correct! Incorrect!     View the Vulkan definition.
More Quizzes →

Tech Terms コンピューター辞書

このページの論理エラーの定義は、TechTerms.comの著者が執筆したオリジナルの定義です。このページを参照または引用する場合は、定義の直下にある緑色の引用バーをご利用ください。

私たちの目標は、コンピューター用語をわかりやすく説明することです。すべての定義において正確さとわかりやすさを追求しています。フィードバックや新しい技術用語の提案がある場合は、お問い合わせください

Tech Terms ニュースレター

毎日または毎週のニュースレターで技術知識を高めましょう!今すぐ購読して、新しい用語やクイズをメールでお受け取りください。

無料のTechTermsニュースレターに登録する

メールの受信頻度を選択してください

各メールのリンクから、いつでも登録解除または頻度変更ができます。 ご質問はこちらからお問い合わせください。

注意:ニュースレターは英語で配信されます。