求解strcmp函数只能比较gets()语句而不能比较fgets(a,sizeof(a),stdin)吗?
如题:在编写程序,运行的时候发现一个问题,那就是strcmp函数不能比较fgets(a,sizeof(a),stdin)的输入。直接上代码
程序代码:
#include<stdio.h> #include<string.h> #define N 20 int main() { FILE*fp; char a; char mima[N]="yanglei10086"; char c[N]; printf("请输入密码:\n"); fgets(c,sizeof(c),stdin); if(strcmp(c,mima)==0) printf("登陆成功\n"); else { printf("登陆失败\n"); printf("按任意键退出\n"); getch(); exit(0); } if((fp=fopen("ceshi.txt","w"))==NULL) { printf("打开失败\n"); exit(0); } a=getchar(); while(a!='\n') { fputc(a,fp); a=getchar(); } fclose(fp); return 0; }
还有测试图。
求解一下疑惑,谢谢了。