C और C ++ में, गंभीर त्रुटि के साथ निम्नलिखित कोड लिखना बहुत आसान है।
char responseChar = getchar();
int confirmExit = 'y' == tolower(responseChar);
if (confirmExit = 1)
{
exit(0);
}
त्रुटि यह है कि यदि कथन होना चाहिए था:
if (confirmExit == 1)
कोडित के रूप में, यह हर बार बाहर निकल जाएगा, क्योंकि confirmExit
चर का असाइनमेंट होता है, फिर confirmExit
अभिव्यक्ति के परिणाम के रूप में उपयोग किया जाता है।
क्या इस तरह की त्रुटि को रोकने के लिए अच्छे तरीके हैं?
if (confirmExit)
:।
a = b
या तो a == b
एक सशर्त या अंदर की अनुमति देता है ।