ในนิพจน์(i, ++i, 1)
เครื่องหมายจุลภาคที่ใช้คือตัวดำเนินการเครื่องหมายจุลภาค
ตัวดำเนินการเครื่องหมายจุลภาค (แสดงโดยโทเค็น,
) เป็นตัวดำเนินการไบนารีที่ประเมินตัวถูกดำเนินการแรกและทิ้งผลลัพธ์จากนั้นประเมินตัวถูกดำเนินการที่สองและส่งกลับค่านี้ (และประเภท)
เนื่องจากมันทิ้งตัวถูกดำเนินการตัวแรกโดยทั่วไปจะมีประโยชน์เฉพาะเมื่อตัวถูกดำเนินการตัวแรกมีผลข้างเคียงที่ต้องการ หากไม่มีผลข้างเคียงกับตัวถูกดำเนินการตัวแรกคอมไพเลอร์อาจสร้างคำเตือนเกี่ยวกับนิพจน์โดยไม่มีผลกระทบ
ดังนั้นในนิพจน์ด้านบนซ้ายสุดi
จะถูกประเมินและมูลค่าของมันจะถูกทิ้ง จากนั้น++i
จะมีการประเมินและจะเพิ่มi
ขึ้น 1 ครั้งและอีกครั้งค่าของนิพจน์ที่++i
จะถูกทิ้งแต่ผลข้างเคียงที่จะi
เป็นแบบถาวร จากนั้นจะมีการประเมินและความคุ้มค่าของการแสดงออกจะเป็น 1
1
มันเทียบเท่ากับ
i; // Evaluate i and discard its value. This has no effect.
++i; // Evaluate i and increment it by 1 and discard the value of expression ++i
i = 1 + 1;
โปรดทราบว่าการแสดงออกดังกล่าวข้างต้นถูกต้องสมบูรณ์และไม่ก่อให้เกิดพฤติกรรมที่ไม่ได้กำหนดเพราะมีจุดลำดับระหว่างการประเมินผลการดำเนินการด้านซ้ายและขวาของผู้ประกอบการเครื่องหมายจุลภาค