คำถามติดแท็ก comma-operator

9
Comma Operator ทำงานอย่างไร
เครื่องหมายจุลภาคทำงานอย่างไรใน C ++ ตัวอย่างเช่นถ้าฉัน: a = b, c; ท้ายที่สุดเท่ากับ b หรือ c หรือไม่? (ใช่ฉันรู้ว่านี่เป็นเรื่องง่ายที่จะทดสอบ - เพียงแค่บันทึกที่นี่เพื่อให้คนอื่นหาคำตอบได้อย่างรวดเร็ว) อัปเดต: คำถามนี้มีความแตกต่างเล็กน้อยเมื่อใช้โอเปอเรเตอร์คอมม่า เพียงบันทึกเอกสารนี้: a = b, c; // a is set to the value of b! a = (b, c); // a is set to the value of c! คำถามนี้ได้รับแรงบันดาลใจจากการพิมพ์ผิดในรหัส สิ่งที่ตั้งใจจะเป็น a = b; …

7
i = อะไร (i, ++ i, 1) + 1; ทำ?
หลังจากอ่านคำตอบนี้เกี่ยวกับพฤติกรรมที่ไม่ได้กำหนดและจุดลำดับฉันได้เขียนโปรแกรมขนาดเล็ก: #include <stdio.h> int main(void) { int i = 5; i = (i, ++i, 1) + 1; printf("%d\n", i); return 0; } 2เอาท์พุทเป็น โอ้พระเจ้าฉันไม่เห็นการลดลงมา! เกิดอะไรขึ้นที่นี่ นอกจากนี้ในขณะที่รวบรวมโค้ดข้างต้นฉันได้รับคำเตือนว่า: px.c: 5: 8: คำเตือน: ตัวถูกดำเนินการทางซ้ายของนิพจน์จุลภาคไม่มีผลใด ๆ [-Wunused-value] i = (i, ++i, 1) + 1; ^ ทำไม? แต่อาจจะตอบโดยอัตโนมัติโดยคำตอบของคำถามแรกของฉัน


8
ฉันจะใส่คำสั่งที่เพิ่มขึ้นสองคำสั่งใน C ++ 'for' loop ได้อย่างไร
ฉันต้องการเพิ่มตัวแปรสองตัวในforเงื่อนไข -loop แทนที่จะเป็นตัวแปรเดียว สิ่งที่ชอบ: for (int i = 0; i != 5; ++i and ++j) do_something(i, j); ไวยากรณ์ของสิ่งนี้คืออะไร?

5
คอมมาทำอะไรในนิพจน์ JavaScript?
ถ้าฉันใช้: 1.09 * 1; // returns "1.09" แต่ถ้าฉันใช้: 1,09 * 1; // returns "9" ฉันรู้ว่า 1,09 ไม่ใช่ตัวเลข ลูกน้ำทำอะไรในโค้ดชิ้นสุดท้าย ตัวอย่างเพิ่มเติม if (0,9) alert("ok"); // alert if (9,0) alert("ok"); // don't alert alert(1); alert(2); alert(3); // 3 alerts alert(1), alert(2), alert(3); // 3 alerts too alert("2", foo = function (param) { alert(param) …

12
ตัวดำเนินการลูกน้ำมีประโยชน์เมื่อใด
ฉันอ่านคำถามนี้เกี่ยวกับ "ตัวดำเนินการลูกน้ำ" ในนิพจน์ ( ,) และเอกสาร MDNเกี่ยวกับเรื่องนี้ แต่ฉันไม่สามารถนึกถึงสถานการณ์ที่เป็นประโยชน์ได้ ดังนั้นตัวดำเนินการลูกน้ำจึงมีประโยชน์เมื่อใด
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.