就是在Dos窗口中你输入字符出现的是'*'号,然后验证密码的正确性(比如密码是“12345”),如果密码错误就提示用户,若密码正确就打印:“You are passed!”,呵呵,大家有空可以做做。
#include<iostream.h> ostream& aa( ostream& output){return output<<'*';} /*定义一个流操纵算子*/ int main() { const int Password=123456; int a; cin.tie(&aa);/*将输出流连入输入流上*/ cin>>a; cin.tie(&cout);/*恢复输出流*/
if(Password==a) cout<<"right"<<endl; else cout<<"wrong"<<endl; return 0; }
这是我的思路,可是现在出现了一个问题
cin.tie(class ostream *),这里如何将aa转换为class ostream *
我试了N种方法也不行。只好请教高手了
是不是我的想法本来就是错误的,请高手指点
[此贴子已经被作者于2004-06-17 22:32:28编辑过]
这是我做的程序,肯定有不少错误,请各位高手指正!!
#include<iostream.h> #include<stdio.h> #include<cstdlib> #include<conio.h> #include<string.h>
void main() { int i=0; char ch,pass[7],password[7]="123456"; cout<<"Enter your password."<<endl; do{ ch=getch(); if(ch!='\r'){ pass[i]=ch; pass[6]='\0'; putchar('*');} i++; }while(ch!='\r'); if(strcmp(pass,password)==0) cout<<'\n'<<"You are passed"<<endl; else cout<<'\n'<<"The password is wrong"<<endl; system("pause"); }