Có thể sử dụng chức năng để phát hiện các ký tự không in với isctrl()
và sử dụng printf với% C specifier để in chúng dưới dạng '\ n' không?Có thể in các ký tự không in bằng chỉ số% C không?
Hoặc tôi nên viết if
cho mọi vi điều khiển và printf("\\n")
ví dụ ..?
OK, cảm ơn Tất cả những người thuộc loại dưới đây - nó không phải là posible, bạn phải chỉ định từng tình huống. Ví dụ:
if (isctrl(char))// WRONG
printf("%c", char);
if (char == '\n')//RIGHT, or using switch.
printf("\\n");
Vâng, nó có thể là tốt hơn để sử dụng [ 'isprint'] (http: // en .cppreference.com/w/c/string/byte/isprint) để phát hiện các ký tự có thể in, thay vì sử dụng 'isctrl' có thể trả về kết quả dương tính giả (vì có các ký tự không thể in không phải là ký tự điều khiển). –
@nhahtdh Nó làm cho một số ý nghĩa - mặc dù tôi sẽ không tìm thấy nó hữu ích, đó là. OP muốn xem '\ n' trên màn hình thay vì ngắt dòng ... Nếu không có giải pháp đã có sẵn hoặc sẵn có khác cho điều này, tôi khuyên bạn nên tạo cấu trúc' chuyển đổi trường hợp 'cho nó, đẹp hơn nhiều so với vô tận nếu-else ... – ppeterka
@ppeterka: Các từ ngữ gây nhầm lẫn cho tôi một chút ở đó. Nó có ý nghĩa sau khi đọc bình luận của bạn. – nhahtdh