Per motivi di prova, vorrei creare una divisione per zero nel mio codice C++. Ho scritto questo codice:Come causare una divisione intenzionale per zero?
int x = 9;
cout << "int x=" << x;
int y = 10/(x-9);
y += 10;
Vedo "int = 9" stampato sullo schermo, ma l'applicazione non si arresta in modo anomalo. È a causa di alcune ottimizzazioni del compilatore (mi compilo con gcc)? Quale potrebbe essere la ragione?
Perché non usi 'abort()' invece? Un'altra opzione che non può essere ottimizzata è la scrittura su un puntatore NULL. –
@JanHudec Nel mio caso avevo bisogno di una divisione specifica per zero. Era un codice RT incorporato e volevo riprodurre il comportamento del sistema con uno specifico tipo di errore. Cose come queste si verificano a volte quando si esaminano i bug nei sistemi embedded. – FireAphis