C ve C ++ 'da, aşağıdaki kodu ciddi bir hatayla yazmak çok kolaydır.
char responseChar = getchar();
int confirmExit = 'y' == tolower(responseChar);
if (confirmExit = 1)
{
exit(0);
}
Hata, if ifadesinin olması gerektiğidir:
if (confirmExit == 1)
Kodlanmış olarak, her seferinde çıkacaktır, çünkü confirmExit
değişkenin ataması gerçekleşir, ardından confirmExit
ifadenin sonucu olarak kullanılır.
Bu tür bir hatayı önlemenin iyi yolları var mı?
if (confirmExit)
.
a = b
veya a == b
içine izin veren bir ifade olması .