眾所周知,乙個良好的密碼輸入程式是在使用者輸入密碼時不顯示密碼本身,只回顯星號。或者,在安全性要求更高的某些程式中,什麼都不顯示。那麼,在c語言中如何實現它呢?
getc()和getchar()函式想必大家都經常用到,但它們都在輸入的同時顯示輸入內容,並由回車終止輸入。為了不顯示輸入內容,我們呼叫另外乙個函式getch(),它包含在標頭檔案中。該函式可以在輸入的同時不顯示輸入內容,並在輸入完成後不需回車而自動終止輸入。與此同時,該標頭檔案中還包含另外乙個函式getche(),它和getch()功能相同,唯一的區別是輸入的同時顯示輸入的內容。本文我們只用到getch();
一、輸入密碼回顯星號
#include
<
stdio.h
>
#include
<
conio.h
>
#include
<
ctype.h
>
#define
max_passwd_len 16
char
passwd
[max_passwd_len +1
]="";
char
*getpasswd()
elseif(
i>0 &
&c==
'\b')}
putchar
('\n');
passwd[i
]='\0'
;return
passwd;}
二、輸入密碼不回顯
與回顯星號的**基本相同,只是去掉列印輸出的**。
#include
<
conio.h
>
#include
<
ctype.h
>
#define
max_passwd_len 16
char
passwd
[max_passwd_len +1
]="";
char
*getpasswd()
elseif(
i>0 &
&c==
'\b')}
passwd[i
]='\0'
;return
passwd;}
C語言程式設計中實現輸入密碼回顯星號
眾所周知,乙個良好的密碼輸入程式是在使用者輸入密碼時不顯示密碼本身,只回顯星號。或者,在安全性要求更高的某些程式中,什麼都不顯示。那麼,在c語言中如何實現它呢?getc 和getchar 函式想必大家都經常用到,但它們都在輸入的同時顯示輸入內容,並由回車終止輸入。為了不顯示輸入內容,我們呼叫另外乙個...
C語言 輸入回顯為星號
使用getch 函式 include intgetchar void 在c語言中,getch 函式用於從stdio流中讀字元,即從控制台讀取乙個字元,但不顯示在螢幕上 我們不需要從緩衝區讀取字元,每個輸入都直接被讀取 這裡我們通過 max 來決定輸入的最大長度,當輸入字元時會回顯 當按下回車鍵後就會...
使用 getch 函式實現密碼的無回顯輸入
getch 是windows的conio.h中的乙個庫函式,用於讀取鍵盤輸入的資料。getch 函式沒有緩衝區,在鍵盤輸入乙個字元後會立即讀取,不需要等待回車鍵按下。getch 的特別之處是它沒有回顯,使用者看不到輸入的字元。目標 模擬密碼輸入,用 回顯 約束密碼位數,設定為10 16位 能夠使用刪...