1 biểu thức nhưng trả về 2 giá trị khác nhau ở các compiler khác nhau

Dạ chào mọi người, đây là bài post đầu tiên của em trên page daynhauhoc, mong mọi người thông cảm nếu có lỗi diễn đạt.
Dạ chuyện là code của em khi chạy trên Visual Stuido Code nó chạy ra kết quả lạ lắm ạ, cụ thể là như hình bên dưới ạ, cùng 2 cái code nhưng khi chạy trên trình C++ online thì kết quả lại ra khác khi chạy trên vsc. Em không biết sao nó bị lỗi vậy nên mong mọi người giúp đỡ ạ.
https://drive.google.com/drive/folders/1DZBbjn7-YdkRBzzhEmHl-Lz1BzJifReA?usp=drive_link
(xin lỗi mọi người, acc mới tạo nên chỉ cho up 1 ảnh ạ, mọi người chịu khó vô link gg drive với ạ)
Thêm nữa là khi em thêm con trỏ thì kết quả lại giảm đi 1. Mọi người biết vì sao không ạ?


Mong mọi người giải đáp giúp em ạ, em cảm ơn trước ạ.

Code này bị Undefined Behavior, không phải lỗi của compiler, càng không liên quan đến VSCode nhé.

3 Likes

Dạ em cảm ơn ạ, em mới năm nhất nên không biết về Undefined Behaviour, em tưởng đâu lỗi gì liên quan đến compiler.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?