Ⅰ c語言backspace鍵的輸入代表什麼
簡言之,如果你使用 Linux, shell運行程序後鍵盤這樣輸入 Ctrl + h 可獲得'\b'
C語言的發明者 Dennis Ritchie 寫了一本叫做 The C Programming Language 的書,書裡面有一道題(1-10)的一部分就是你的問題。
這道題的背景是,Linux 的 standard input 默認即鍵盤輸入,standard output 默認即顯示輸出,之所以有 redirection 就是可以將這些標准輸入輸出轉為文件輸入輸出。
這道題的原意是,比如我鍵盤按了 tab 鍵,顯示器可能出來好幾個空位,或者是文件中包含了 tab 鍵 redirection 到了顯示器輸出,光是從顯示器肉眼是看不出來到底是多個空格還是一個 tab 鍵的。同理,ASCII 字元集或者是 Unicode 字元集,有很多這類 invisible 的不可見字元,包括 backspace 。如何將不可見字元轉化為可見的或直觀的表示,是這道題的原意。不可見字元那麼多,都有數字編碼對應,但轉化為轉義字元更為直觀,這也是為什麼只有少數的不可見字元擁有轉義字元。
你可能遇到的困難是,直接輸入了鍵盤上一個叫做 backspace 的鍵,顯然幾乎在任何程序里你直接造成了之前一個字元的刪除。
幸運的是,在 shell 里,Ctrl-h 成了輸入 backspace 字元的一個替代方案。
至於在其它系統其它程序如何輸入,我想都有其方法的,Mac OS 有 bash,windows 的 cmd 或某些 IDE 是否可行我不知,我沒有 Windows
我也是一個 C 語言的初學者,我學習 C 的目的是 Linux 業余編程,Unix/Linux 跟 C 是孿生兄弟,他們配合默契,希望對你們有用。
其實,更重要的,理解題目的主旨才是重要的
Ⅱ C語言如何判定按下的是delete鍵
這個本人認為可以,不用那個文件也行,可以取得你按鍵的ASCII碼就行
你可以寫個函數check()
check()
{
char c;
if((c=getchar())=(delete的ASC碼))
//這里是添加你要的功能代碼
}
這個asc碼可以用asc()函數來實現……
自己未驗證,能否成功有時間驗證下
Ⅲ C語言-刪除字元串中指定的字元
一、問題描述:從鍵盤輸入一個字元串給str和一個字元給c,刪除str中的所有字元c並輸出刪除後的字元串str。
1、輸入:第一行是一個字元串; 第二行是一個字元。
2、輸出:刪除指定字元後的字元串。
二、設計思路:
1、 同插入問題,定義兩個字元數組a,b。以及標志刪除位置的int型pos。
2、用gets函數輸入數組a的值,並利用for循環將數組a 到 數組b。
3、利用for循環,令pos位的數組b元素賦值到a。
三、實現代碼如下:
具體執行結果同上。
Ⅳ delete 在c語言中什麼意思
delete表示釋放堆內存,通常與malloc配對使用。
如下代碼:
int*p=malloc(sizeof(int));
//dosomething
deletep;
上面代碼片段先是申請了一塊堆內存,在使用完的時候,記住需要將堆內存釋放,釋放方式就是使用delete。否則會發生內存泄漏。
關於堆內存和棧內存區別,題主可以查閱相關書籍
Ⅳ c語言怎樣刪除文件
首先要說明的是這里並不是指刪除C編譯器裡面的文件,呵呵,如果只是要刪除那些文件的話,那就很簡單,直接選中文件後按delete鍵就可以刪除了,但是我們刪除那些文件幹嘛?我們還要用它寫程序啊,呵呵。我在這里要說的是,怎樣使用C語言編寫程序來刪除文件。
在C語言中,我們可以使用remove()函數來刪除指定的文件,具體語法為:
Int remove(char *filename);其中filename是一個指向字元串的指針,該字元串可以組成有效的文件名,也可以包含路徑說明。如果我們要刪除D盤下的ABC.txt文件,我們就可以這樣寫:remove(「D:\ABC.txt」);
Ⅵ c語言 如何刪除已輸入字元前的一個字元 按BACKSPACE
\b退格後輸出個空格覆蓋掉再\b退格
Ⅶ C語言中如何使用退格鍵字元刪除帶「*」的密碼請高手指點~~~~
main()
{//要用轉義字元'\b'
printf("abcde\b \b");//舉例:第一個'\b'退格,但是'e'還在,緊接著空格把'e'覆蓋,再一個'\b'才能達到效果
}
Ⅷ c語言刪除字元 從鍵盤輸入任意一個字元串和一個字元,要求從該字元串中刪除所有該字元。
#include <stdio.h>
int main()
{
char str[100], a, *p, *q, *m, n;
while(gets(str)!=0)
{
scanf("%c", &a);
getchar();
p = str;
while(*p)
p++;
n = p - str;
p = str;
while(*p!=a)
p++;
m = p;
while(p<str+n)
{
q = p+1;
while(*q==a && q<str+n)
q++;
p = q;
q = p+1;
while(*q!=a && q<str+n)
q++;
while(p<q)
{
*m = *p;
m++;
p++;
}
p = q;
}
*m = '\0';
printf("%s\n", str);
}
return 0;
}
Ⅸ C語言中退格鍵用什麼表示急用,急用
「FF」表示換頁,或彈出;「BS」表示退格,而「BEL」表示一個響聲。在一個文本編輯器中,它們會顯示成一個白色或黑色的方塊,或笑臉、音符或其它一些奇怪的符號。要打出這些字元,可以使用CTRL鍵和一個合適的代碼。例如同時按住「CTRL」和「G」,或簡寫成「CTRL-G」或「^G」可以打出一個BEL字元。
#include <stdio.h>
#include <curses.h>
int main(void)
{
char ch;
printf("Input a character:");
ch = getch();
printf("\nYou input a '%c'\n", ch);
return 0;
}
編譯時加上-lcurses參數
如果還不行,那秒是相互混亂了,那就不好搞了!要花好多時間!
Ⅹ 在C語言中,游標在前面,按什麼快捷鍵刪除後面的東西,急急急!!!
如果是在一行的前面,那就先按鍵盤上的 End 鍵,然後找到要刪除的東西進行刪除;
如果游標在一個文件的開頭處,你想把它快速移動到文件尾部,按 Ctrl + End