c++输入密码以星号代替
作者:野牛程序员:2023-07-19 10:32:00 C++阅读 2605
在C++中,控制台输入密码并将其以星号代替可以通过以下方法实现:
#include <iostream> #include <conio.h> // 需要使用conio.h头文件 int main() { char password[20]; int i = 0; char ch; std::cout << "Enter password: "; while (true) { ch = _getch(); // 使用_getch()函数从控制台读取字符,而不在控制台上显示输入字符 if (ch == 13) // 如果输入的是回车键(ASCII码为13),则停止读取 break; password[i++] = ch; std::cout << "*"; // 显示星号代替实际字符 } password[i] = '\\0'; // 将字符串以空字符结尾,形成有效的C字符串 std::cout << std::endl << "Password entered: " << password << std::endl; return 0; }
在这个示例中,使用了conio.h
头文件中的_getch()
函数来读取字符而不显示在控制台上。在每次读取到字符时,将其存储在字符数组password
中,并在控制台上显示星号代替。当用户按下回车键(ASCII码为13)时,退出循环,并在最后输出输入的密码。
请注意,这种方法只是在控制台中有效,并不适用于图形界面应用程序。另外,conio.h
头文件在一些编译器中可能不可用。如果你遇到问题,请尝试使用其他方法来实现类似的功能。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:fstream头文件
- 下一篇:字符串字典序是什么