Khi tôi đọc Ngôn ngữ lập trình C và thực hiện bài tập 1-10, có một vấn đề khiến tôi bối rối.Cách lưu trữ ký tự ' b' và làm cho nó được nhận dạng bởi tệp của chương trình c
Người ta nói rằng khi tôi nhập một backspace, nhân vật được xử lý bởi trình điều khiển giao diện điều khiển và không được chuyển giao cho chương trình, vì vậy những gì tôi có thể làm là tạo một tập tin với backspace nhúng.Tuy nhiên, nó có vẻ vô dụng không có vấn đề tôi trực tiếp nhập '\ b' hoặc nhấn Ctrl + H.
Khi tôi nhấn Ctrl + H, màn hình sẽ hiển thị "\ b", nhưng khi tôi chạy chương trình, có vẻ như chương trình vẫn sẽ xem dưới dạng hai ký tự '\' và 'b'. Không có vấn đề gì tôi nhập vào, nó không bao giờ cho thấy "\ backspace" khi tôi chạy chương trình.
Tôi nên làm gì để làm cho chương trình nhận ra nó là một ký tự của backspace?
mã của tôi là như sau:
#include <stdio.h>
int main()
{
int c;
while((c=getchar())!=EOF){
if(c=='\t')
printf("\\t");
else if(c=='\\')
printf("\\\\");
else if(c=='\b')
printf("\\backspace");
else
putchar(c);
}
}
"tạo tệp" Bạn đã tạo tệp này bằng cách nào? (biên tập văn bản nào?) – Rufflewind
Tôi sử dụng vim và tạo một tệp có tên b. Sau đó gõ lệnh ./a.out
Bạn phải sử dụng [tổ hợp phím đặc biệt trong vim để nhập ký tự điều khiển] (http://stackoverflow.com/a/1585463) chẳng hạn như backspace. Trong trường hợp của bạn, bạn nên nhập 'ctrl + v', tiếp theo là' ctrl + h'. Điều đó sẽ nhập một ký tự backspace thực. – Rufflewind