undefined behavior

/ʌndɪˈfaɪnd bɪˈheɪvjər/ アンディファインド ビヘイビア

1. プログラミング言語において、言語規格がその動作を保証しない、予測不能な状態。

CやC++などのプログラミング言語の標準規格において、特定の操作(例:ヌルポインタの逆参照、配列の範囲外アクセス、符号付き整数のオーバーフローなど)が行われた際に、その動作結果が明確に定義されていない状態を指します。このような状況が発生すると、コンパイラはどのようなコードを生成してもよく、プログラムの実行結果はクラッシュ、誤った計算、データ破損、または一見正常な動作など、あらゆる形を取りうるため、予測が非常に困難になります。これにより、セキュリティ上の脆弱性や、異なるコンパイラ・環境間での非互換性の原因となることがあります。
Accessing memory through a null pointer is a classic example of undefined behavior. (ヌルポインタを介したメモリへのアクセスは、未定義動作の典型的な例です。)
関連
C standard
C++ standard
implementation-defined behavior
unspecified behavior