Lessico IT › Programmazione › Comportamento indefinito

Comportamento indefinito

Programmazione Svenska → Aggiornato: 2026-10-05

Codice C/C++ il cui comportamento non è specificato: il compilatore può fare qualsiasi cosa, anche eliminare il codice stesso.

Gli esempi classici sono l'overflow di interi con segno, la divisione per zero, l'uso di memoria già liberata e la lettura di memoria non inizializzata. Il compilatore ottimizza partendo dal presupposto che il comportamento indefinito (UB) non si verifichi mai, e così un bug banale diventa una falla di sicurezza. I sanitizzatori (ASAN, UBSAN) lo individuano nei test; Rust elimina la maggior parte dell'UB già nella progettazione del linguaggio.

← Torna al lessico