30/09/2018, 18:53
Lỗi nhập và xuất của visual studio 2015!
mình bị lỗi này khi sử dụng kiểu char, cụ thể là:
khi mình nhập 1 kí tự bất kỳ thì khi xuất kí tự đó ra lại nó đều ra cái kí tự đặc biệt có bên bảng console.
có ai gặp trường hợp này rồi thì mong chỉ giúp mình fix với.
cảm ơn!
cụ thể hơn
Bài liên quan
bạn thử dùng printf_s xem thế nào ?
không được bạn ơi, mình nghĩ là do scanf mà mình không biết nguyên nhân. cứ xài kiểu char là nhập bất kỳ cái gì thì đều xuất ra kí tự đặc biệt (%d = -52)
lỗi oái oăm thật
Bạn sửa lại cái scanf_s của bạn thành thế này xem, mình theo tài liệu trên này:
Cái lệnh này đảm bảo security nên phải tường minh là nhập bao nhiêu phần tử.
cảm ơn bạn rất nhiều.
trước mình dùng scanf và getch()
nhưng cái visual nó chỉ cho chạy khi sử dụng scanf_s và _getch()
mình nghĩ nó tương đương nên không biết sửa lỗi này.
cái scanf thì thêm _crt_secure_no_warnings là chạy được nhưng mỗi project thì phải lặp lại. bạn có biết cách fix ko? nếu có thì chỉ mình nha
vẫn dùng được scanf và printf nhé bạn…
khi tạo project thì bạn bỏ check cái ô cuối cùng ấy
Mình nghĩ cái này nên giữ, rất có lợi khi debug, bởi vì nếu lập trình viên lỡ tay phá hỏng memory của chương trình là SDL nó báo ngay lập tức. Chịu khó thay mấy hàm đó bằng mấy hàm security cũng được mà
Cái đó chỉ phù hợp khi bạn dùng VS để code thôi, nếu dùng IDE (compiler) khác thì không được. Mình nghĩ đầu tiên nên học theo chuẩn C. Sau khi thành thạo rồi tùy vào mục đích của chương trình thì dùng cho phù hợp.
Với lại khi viết code C thì cũng nên tập thói quen hiểu rõ từng dòng lệnh của mình viết ra, tránh lỗi về security.
Nếu bạn thấy phiền hoặc không quen tay khi dùng hàm
scanf_s
mà muốn dùng hàmscanf
bình thường thì làm như sau:#include <stdio.h>
) :#define _CRT_SECURE_NO_WARNINGS
Vậy là giờ bạn thoải mái dùng hàm
scanf
vàgetch();
mà không sợ lỗi nhé