char pwd[PWD_LEN],pwdtmp[PWD_LEN],mml[MML_LEN];
char recvbuf [STR_MAX_LEN],tmpbuf[NAME_LEN+10],tmpcd[NAME_LEN+105];
bool zcf=0,dlf=0;
recv(SockFrom, mml, MML_LEN, 0);
if(strcmp(mml,"tc")==0/*strcmp(mml,"zc")==0||strcmp(mml,"dl")==0*/) {
recv(SockFrom, mml, MML_LEN, 0);
}
if(strcmp(mml,"zc")==0) {
zcf=1;
}
if(strcmp(mml,"dl")==0) {
dlf=1;
}
recv(SockFrom, name, NAME_LEN, 0);
recv(SockFrom, pwd, PWD_LEN, 0);
sprintf(tmpcd,"%s.txt",name);
if(zcf) {
freopen(tmpcd,"r",stdin);
if(scanf("%s",pwdtmp)!=-1){
send(SockFrom, aznok, int(sizeof(aznok)/sizeof(char)), 0);
fclose(stdin);
continue;
}
fclose(stdin);
fp=fopen(tmpcd,"w");
fclose(fp);
Sf.open(tmpcd);
Sf<<pwd;
Sf.close();
//freopen(tmpcd,"w",stdout);
//printf("%s",pwd);
//freopen("CON","a",stdout);
printf("%s register Successful!\n", name);
send(SockFrom, azok, int(sizeof(azok)/sizeof(char)), 0);
continue;
} else
if(dlf) {
send(SockFrom, aok, int(sizeof(aok)/sizeof(char)), 0);
/*freopen(tmpcd,"r",stdin);
if(scanf("%s",pwdtmp)==-1||strcmp(pwdtmp,"")==0) {
send(hsock, anok2, int(sizeof(anok2)/sizeof(char)), 0);
fclose(stdin);
continue;
}
fclose(stdin);
if(strcmp(pwd,pwdtmp)==0) {
send(hsock, aok, int(sizeof(aok)/sizeof(char)), 0);
} else {
send(hsock, anok, int(sizeof(anok)/sizeof(char)), 0);
return 0;
}*/
}
实现注册功能(zcf后)
无法将pwd写入name.txt
char recvbuf [STR_MAX_LEN],tmpbuf[NAME_LEN+10],tmpcd[NAME_LEN+105];
bool zcf=0,dlf=0;
recv(SockFrom, mml, MML_LEN, 0);
if(strcmp(mml,"tc")==0/*strcmp(mml,"zc")==0||strcmp(mml,"dl")==0*/) {
recv(SockFrom, mml, MML_LEN, 0);
}
if(strcmp(mml,"zc")==0) {
zcf=1;
}
if(strcmp(mml,"dl")==0) {
dlf=1;
}
recv(SockFrom, name, NAME_LEN, 0);
recv(SockFrom, pwd, PWD_LEN, 0);
sprintf(tmpcd,"%s.txt",name);
if(zcf) {
freopen(tmpcd,"r",stdin);
if(scanf("%s",pwdtmp)!=-1){
send(SockFrom, aznok, int(sizeof(aznok)/sizeof(char)), 0);
fclose(stdin);
continue;
}
fclose(stdin);
fp=fopen(tmpcd,"w");
fclose(fp);
Sf.open(tmpcd);
Sf<<pwd;
Sf.close();
//freopen(tmpcd,"w",stdout);
//printf("%s",pwd);
//freopen("CON","a",stdout);
printf("%s register Successful!\n", name);
send(SockFrom, azok, int(sizeof(azok)/sizeof(char)), 0);
continue;
} else
if(dlf) {
send(SockFrom, aok, int(sizeof(aok)/sizeof(char)), 0);
/*freopen(tmpcd,"r",stdin);
if(scanf("%s",pwdtmp)==-1||strcmp(pwdtmp,"")==0) {
send(hsock, anok2, int(sizeof(anok2)/sizeof(char)), 0);
fclose(stdin);
continue;
}
fclose(stdin);
if(strcmp(pwd,pwdtmp)==0) {
send(hsock, aok, int(sizeof(aok)/sizeof(char)), 0);
} else {
send(hsock, anok, int(sizeof(anok)/sizeof(char)), 0);
return 0;
}*/
}
实现注册功能(zcf后)
无法将pwd写入name.txt