#include <iomanip>
#include <fstream>
#include <stdio.h>
#include<iostream>
using namespace std
int main()
{
char buffer1[256]
char buffer2[256]
ifstream myfile ("伏拿d:/Mima.txt")
char *a = NULL
char *b = NULL
myfile.getline(buffer1,10,'\n')//首先取出文件中的密码
a = buffer1
myfile.close()
cout<<"请输入密码:\n"
cin>>buffer2
b = buffer2
while(1)
{
if(strcmp(a,b)==0)
{
char p
cout<<"密码正确...你是好人\n"
cout<<"结束请摁a\n"
cin>>p
while (p!='a')
{
cin>>p
}
return 0
}
cout<<圆缓"密橘厅模码正确...你是坏蛋\n"
cout<<"请输入密码:\n"
cin>>b
}
return 0
}
因为你不清空数组,input超过密码长度的值还保留在数组里面。给你详细举例,当你输入超过密码长度hehe1234,你的input里面的尺喊数据就是{h,e,h,e,1,2,3,4...}这时候你再输入正确密码hehe123,前面的都被覆盖,但是4还保留在数组里面,棚困虚你的input其实还是hehe1234,所以你不可能再得链燃到正确密码。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)