Vâng, chính xác là: trình biên dịch lấy giá trị cuối cùng. Đó là toán tử dấu phẩy và nó đánh giá toán hạng của nó từ trái qua phải và trả về giá trị tận cùng bên phải. Nó cũng giải quyết từ trái qua phải. Tại sao mọi người sẽ viết mã như vậy, tôi không có ý tưởng :)
Vì vậy int b = (1, 2, 3)
tương đương với int b = 3
. Nó không phải là một danh sách nguyên thủy của bất kỳ loại nào, và toán tử dấu phẩy ,
chủ yếu được sử dụng để đánh giá nhiều lệnh trong ngữ cảnh của một biểu thức, chẳng hạn như a += 5, b += 4, c += 3, d += 2, e += 1, f
chẳng hạn.
Không có logic nào đằng sau mã đó. Đó là điều mà giáo viên sẽ làm để kiểm tra sự hiểu biết của bạn về toán tử dấu phẩy. Sử dụng [bài tập về nhà] khi thích hợp. –
hoặc là lỗi đánh máy. Tức là (1,2,3) không phải là tác giả của mã dự định. – ddyer
có thể trùng lặp của [Toán tử dấu phẩy \ ', \' làm gì trong C?] (Http: // stackoverflow.com/questions/52550/what-does-the-comma-operator-do-in-c) –