您的位置:首页 > 其它

<密码的实现>输入密码的时候,显示“*”,而不是显示输入内容

2016-07-23 12:29 302 查看
一开始还以为用C语言和C++不能实现输入密码的时候显示出“*”而不显示输入的内容呢!没想到偶然的机会试出了用while循环结构可以实现。以下是我整理的C语言和C++的代码,供初学者参考。

这是C语言实现的代码:

#include <stdio.h>
#include <conio.h>
int main()
{
  int c;
  char str[100], *p = str;
  while ((c = getch()) != '\r')
    *p++ = c, printf("*");
  printf("\n");
  *(p++)='\0';
  puts(str);
  return 0;
}


这是C++实现的代码:

#include <cstdio>
#include <conio.h>
#include <iostream>
using namespace std;

int main() {
  char c;
  char str[90];
  int i =0;
  while ((c = getch()) != '\r') {
    str[i++] = c;
    cout << "*";
  }
  str[i] = '\0';
  cout << endl << str ;
  return 0;
}


缺点:可以后退删除,但是删除的时候也会显示 * ,谢谢支持!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: