Theo truyền thống, đó là - nói đúng - một lỗi khi chuyển một số signed char
đến các vị từ ctype.h
vì chúng chỉ được xác định từ -1 đến 255, vì vậy -128 đến -2 có thể kết thúc bằng việc đọc ngoài giới hạn mảng.Liệu ctype.h vẫn yêu cầu char chưa ký?
Điều này đã từng được khắc phục hay bạn vẫn nói đúng cách phải sử dụng unsigned char
để tránh hành vi không xác định trong các phiên bản hiện đại của C?
Các chương trình hiện đại chỉ tăng cơ hội đối đầu với các ký tự trong phạm vi 128-255, sẽ bị hiểu nhầm là âm nếu được xem là ký tự đã ký, vì vậy câu trả lời là “nhiều hơn bao giờ hết”. –