Qu'est-ce que et pourquoi la diffusion vers un float
ou double
empêche une division de 0 de se bloquer?
En outre, toutes les grandes idées sur la façon d'empêcher la division par 0? (Comme toute macro ou modèle)?Diviser par zéro prévention
int nQuota = 0;
int nZero = 3/nQuota; //crash
cout << nZero << endl;
float fZero = 2/nQuota; //crash
cout << fZero << endl;
si je l'utilise à la place:
int nZero = 3/(float)nQuota;
cout << nZero << endl;
//Output = -2147483648
float fZero = 2/(float)nQuota;
cout << fZero << endl;
//Output = 1.#INF
wow intéressant. Dans l'attente d'une réponse. –
cela pourrait être intéressant pour vous: http://blog.regehr.org/archives/721 – cppanda