मुझे निम्नलिखित कोड मिला है:
#include <stdio.h>
int main(int argc, char **argv) {
int i = 0;
(i+=10)+=10;
printf("i = %d\n", i);
return 0;
}
अगर मैं इसे एक सी स्रोत के रूप में संकलित करने का प्रयास करता हूं, तो मुझे एक त्रुटि मिलती है:
error: lvalue required as left operand of assignment
लेकिन अगर मैं इसे G ++ का उपयोग करके C ++ स्रोत के रूप में संकलित करता हूं तो मुझे कोई त्रुटि नहीं मिलती है और जब मैं निष्पादन योग्य चलता हूं:
i = 20
अलग व्यवहार क्यों?