Я имею в виду this questionПонимание побочных эффектов в использовании #define
#define max(a,b) ((a<b)?b:a)
это будет иметь какой-то побочный эффект, как указано в ответе;
Побочные эффекты возникают, если вы используете макс (A ++, б ++), например (а или б будет увеличиваться в два раза)
Я не могу понять этот побочный эффект; почему a или b будут увеличиваться дважды, когда мы используем max (a ++, b ++)?
Помните, что макросы - это фактически замена текста. Разверните макрос, и вы должны увидеть проблему. –
@FredLarson ваше предложение действительно помогло мне. спасибо – user25108
Также прочитайте [Точка последовательности] (http://en.wikipedia.org/wiki/Sequence_point) –