Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Toán tử trong C#

15:46 13-12-2017 496 lượt xem 11 bình luận 10:47 16-12-2017

Cho mình hỏi :

int a = 5;

Console.WriteLine(a++);

tại sao ra kết quả k phải bằng 6 vậy, với lại cho mình hỏi dấu ++ nằm trước và sau có ý nghĩa gì mình tham khảo nhiều mà vẫn còn mơ hồ quá , mình cám ơn :D.

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
nguyendat111195 đã bình luận 16:42 13-12-2017

a++ thực hiện phép tính sau đó mới cộng thêm 1.

++a là cộng thêm 1 sau đó mới thực hiện phép tình.

ndson92 đã bình luận 13:22 14-12-2017

a++ : cộng sau khi gọi

++a: cộng trước

Nguyen đã bình luận 09:45 14-12-2017

Nó ra bằng 5 vì a++ là hậu tố nên nó sẽ xuất ra a trước rồi mới đem +1. Bạn có thể xuất a 2 làn liên tiếp là thấy được à. Còn ++a thì nó là tiền tố, áp dụng vào cái câu lệnh cú bạn thì nó sẽ +1 trước rồi mới xuất ra. Bạn có thể chạy thử là hiểu ý mà

Anh DH đã bình luận 02:06 14-12-2017

tức là thế này cả a++ và ++a thì sau khi code đi qua a sẽ đc tăng thêm 1 đơn vị, sự khác nhau đó là a++ thì nó tăng lên 1 đơn vị rồi trả về giá trị cho bạn, ở đây 5 nó tăng lên 1 thành 6 rồi trả về giá trị 6.
Còn ++a thì nó nhả giá trị trước rồi nó mới thực hiện phép cộng sau cho nên cw(++a) vẫn ra 5

Nguyễn Thái Hải đã bình luận 16:45 13-12-2017

lện mạng tìm hiểu độ ưu tiên toán tử nha bạn. còn giải thích thì có bạn kia giải thích rồi

Câu hỏi mới nhất