【发布时间】:2015-03-07 13:03:43
【问题描述】:
在此功能中,如果用户想使用该功能,那么它会要求输入密码,即 crackneedit。当用户输入密码时,它将按原样打印在屏幕上
所以我希望每当有人输入密码时,它都会以 *(星号)打印。我应该使用哪个技巧?
int pvote()
{
int check;
char *str = "crackneedit";
char pass[11];
printf("Enter your password: ");
scanf("%s",pass);
check = strcmp(pass,str);
if (check == 0)
{
printf("\nVote recorded according to parties are:\n");
printf("PARTY VOTE\n\n");
printf("BJP %d\n",b);
printf("CONGRESS %d\n",c);
printf("AAP %d\n",a);
printf("OTHER %d\n",o);
getch();
return(0);
}
printf("\nACCESS DENIED\n");
return(0);
}
【问题讨论】:
-
你有没有尝试过或做过一些研究?
-
查看:stackoverflow.com/a/6856689/57135,但不要使用“getpass”建议。
-
使用一点缩进。有各种使用终端的库 - termcap 是自己的
-
为什么
return使用括号?这不是一个功能。你也可以很容易地让你的程序行为不端只要输入abcdefghijkl就可以了,你还应该正确使用标准函数并且scanf()返回一个值,不要忽略它。 -
@iharob:一些编码标准要求这样做。在我读到的一篇文章中,给出的原因是为了与
while、for等始终需要括号的视觉一致性。这可能会或可能不会令人信服,但至少它没有真正的伤害:)
标签: c