注意getpass 函式

2021-07-16 06:07:25 字數 646 閱讀 8727

getpass()函式用來接收密碼,無回顯;

函式原型:

#include 

char *getpass(const

char *prompt);

引數prompt時輸入時的提示資訊,返回 char *;

我自己使用時遇到這種問題:

#include

#include

#include

int main(void)

結果:

passwd:

123dasd:

asdasd

我第一次輸入123,第二次輸入asd,可見,在第二次呼叫了passwd函式後,pa和pp指向的內容相同了.

我認為getpass()函式從輸入中讀取的字元是在某一固定的記憶體位址中存放,故而第二次呼叫後pa和pp都指向的是相同的位址,內容也是一樣的.

然後我的解決方案:

使用完getpass()函式後立即用memcpy()來拷貝.

#include

#include

#include

int main(void)

getpass 函式 螢幕輸入不回顯

環境 vmware workstation centos 6.4 x86 64 說明 讀寫使用者輸入,螢幕不回顯 char getpass const char prompt getpass用於從鍵盤讀取使用者輸入,但螢幕不回顯。引數prompt為螢幕提示字元。函式返回值為使用者鍵盤輸入的字串。螢幕...

getpass密碼輸入模組

getpass是python的內建模組,其api解釋如下 可以看到,getpass的第乙個方法getpass可以在命令列視窗裡面無回顯輸入密碼。引數prompt代表提示字串,預設是 password 在linux系統中,stream預設為當前控制的終端。在windows系統裡stream引數會被忽略...

getpass模組和random模組

用於對密碼的隱藏輸入案例 import getpass passwd getpass.getpass please input your password random 方法返回隨機生成的乙個實數,它在 0,1 範圍內 語法 import random random.random 注意 random...