社区
C语言
帖子详情
用c语言怎么能实现密码输入?
microtan0902
2004-04-06 10:08:26
用c语言怎么能实现密码输入?
就是输入一个字符串,与内定的密码进行比较(这部分我都明白),但问题是,我怎么才能做到输入时显示的都是***************而实际输入的是我的密码如(123456798),最好用代码告诉我。谢谢
...全文
283
16
打赏
收藏
用c语言怎么能实现密码输入?
用c语言怎么能实现密码输入? 就是输入一个字符串,与内定的密码进行比较(这部分我都明白),但问题是,我怎么才能做到输入时显示的都是***************而实际输入的是我的密码如(123456798),最好用代码告诉我。谢谢
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
liushuaiboy
2004-05-04
打赏
举报
回复
mark
kinglonghr
2004-05-04
打赏
举报
回复
能解释一下printf(prompt)吗?
而且程序里有3处警告,如何处理?
八卦之魂
2004-04-09
打赏
举报
回复
收藏
qepyxyx065
2004-04-07
打赏
举报
回复
最简单的就是用c自带的库函数,不回显字符,最后比较2次输入的数组中的字符就ok啦
pacman2000
2004-04-07
打赏
举报
回复
unix/linux里面有个库函数:
#include <unistd.h>
char *getpass( const char * prompt );
xumiao0705
2004-04-07
打赏
举报
回复
楼上的加上完整的字符合法性校验和密码校验就是完整的密码输入程序了。
zfrandzfr
2004-04-07
打赏
举报
回复
for (i=1;i<8;i++)
{
char aa[8];
cin>>aa[i];
cou<<"*";
}
vconan
2004-04-07
打赏
举报
回复
shankeke(sk) 的程序,else if 前面少了一个‘}’
运行正确
vconan
2004-04-07
打赏
举报
回复
KingI(↑㊣↑) :
error C2065: 'getch' : undeclared identifier
为什么会这样,COPY过去的,改成getchar()就没出错
shankeke
2004-04-07
打赏
举报
回复
char *get_password(const char *prompt)
{
static char buffer[128];
int i = 0;
char letter = NULL;
printf(prompt);
while((i<127)&&(letter!='\r'))
{
letter = getch();
if(letter == BACKSPACE)
{
if(i>0)
{
buffer[--i] = NULL;
putchar(BACKSPACE);
putchar(' ');
putchar(BACKSPACE);
}
else
{
putchar(7); //响铃
}
else if(letter != '\r')
{
buffer[i++] = letter;
putchar('*');
}
}
buffer[i] = NULL;
return (buffer);
}
icelover
2004-04-07
打赏
举报
回复
#include<stdio.h>
#include<conio.h>
#include<string.h>
#define BACKSPACE 8
char *get_password(const char *prompt)
{
static char buffer[128];
int i = 0;
char letter = NULL;
printf(prompt);
while((i<127)&&(letter!='\r'))
{
letter = getch();
if(letter == BACKSPACE)
{
if(i>0)
{
buffer[--i] = NULL;
putchar(BACKSPACE);
putchar(' ');
putchar(BACKSPACE);
}
else
{
putchar(7); //响铃
}
else if(letter != '\r')
{
buffer[i++] = letter;
putchar('*');
}
}
buffer[i] = NULL;
return (buffer);
}
void main()
{
char *password;
password = get_password("Enter password: ");
if(strcmp(password, "password"))
printf("\nPassword Incorrect\n");
else
printf("\nPassword Ok\n");
}
KingI
2004-04-07
打赏
举报
回复
/*带验证的密码输入程序*/
#include <stdio.h>
#include <string.h>
#define N 8
main()
{
char c,s[20];
char a[20]="12345678"; /*原始密码*/
int i;
for (i=0; i<N; i++)
{
c=getch();
putchar('*');
s[i]=c;
}
if (!strcmp(s,a))
printf ("Password is right!");
else
printf ("Password is wrong!");
return 0;
}
hcj2002
2004-04-06
打赏
举报
回复
写错了,应该是getch();
Caoyu015
2004-04-06
打赏
举报
回复
N年前写的:)
Caoyu015
2004-04-06
打赏
举报
回复
#define MAXLINE 255
char * cy_gets()
{
static char t[ MAXLINE ];
char ch;
int flag=0,i=0;
for ( ; i < MAXLINE; )
{
ch = getch();
switch( ch )
{
case '\r':
case '\n':
t[i] = '\0';
return t;
case '\b':
if ( i > 0 )
i--;
if ( i == 0 )
flag++;
if ( i>0||flag==1 )
{
putch( '\b' );
putch( ' ' );
putch( '\b' );
}
break;
default:
t[i] = ch;
i++;
flag = 0;
if ( ch == ' ' )
putch( ' ' );
else
{
putch( '*' );
putch( '\a' );
}
}
}
t[ MAXLINE - 1 ] = '\0';
return t;
}
hcj2002
2004-04-06
打赏
举报
回复
用不带回显得的getchar()获得输入,然后如果输入满足是一个合法字符则用putchar()输出*号。
C语言
实现
密码
输入
达到理想的
密码
输入
效果,即平常的
密码
输入
效果
【C】
C语言
实现
输入
密码
回显星号*
C语言
实现
输入
密码
回显星号*
C语言
实现
输入
密码
回显星号* C课程设计,需要通过getch()函数使用
输入
密码
回显星号的功能,但是网络上的解决办法或多或少都存在问题,有的不能使用BackSpace,有的不能结束
输入
,有的甚至会把*前的提示文字删掉。 新的改变 写成函数,方便调用; 函数形参为password数组; 通过指针,给password数组元素赋值; 将用户
输入
的字符存到数组中。 使用环...
c语言
怎样
实现
输入
密码
进入系统,
C语言
编程中
实现
输入
密码
回显星号
众所周知,一个良好的
密码
输入
程序是在用户
输入
密码
时不显示
密码
本身,只回显星号。或者,在安全性要求更高的某些程序中,什么都不显示。那么,在
C语言
中如何
实现
它呢?getc()和getchar()函数想必大家都经常用到,但它们都在
输入
的同时显示
输入
内容,并由回车终止
输入
。为了不显示
输入
内容,我们调用另外一个函数getch(),它包含在头文件中。该函数可以在
输入
的同时不显示
输入
内容,并在
输入
完成后不需回车...
C语言
编程中
实现
输入
密码
回显星号
C语言
编程中
实现
输入
密码
回显星号 众所周知,一个良好的
密码
输入
程序是在用户
输入
密码
时不显示
密码
本身,只回显星号。 或者,在安全性要求更高的某些程序中,什么都不显示。那么,在
C语言
中如何
实现
它呢? getc()和getchar()函数想必大家都经常用到,但它们都在输
C语言
70,040
社区成员
243,237
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章