strcmp返回值不对!!!!!!!!!!!!!!!

图片说明

#include<stdio.h>
#include <string.h>

void main(){
    char name[16] , pwd[16];
    int a , b;
    printf("请输入用户名:");
    fgets(name,sizeof(name),stdin);
    printf("请输入密码:");
    fgets(pwd,sizeof(pwd),stdin);
    printf("%s\n%s" ,&name , &pwd);
    a = strcmp(name,"abc");
    b = strcmp(pwd,"123456");
    printf("%d\n",&a);
    printf("%d",&b);
    if(strcmp(name,"abc") == 0 && strcmp(pwd,"123456") == 0){
        printf("---交换机管理系统---\n");
        printf("1.登录\n");
        printf("2.创建帐号\n");
        printf("3.退出\n");
    }else{
        printf("\n用户名或者密码不正确!\n");
    }

}




得到的不是0或者1 或者-1

2个回答

没看到你输入用户名密码
fgets(name,sizeof(name),stdin);
fgets(pwd,sizeof(pwd),stdin);
换成
scanf("%s", name);
scanf("%s", pwd);
printf("%s\n", name);
printf("%s\n", pwd);
输出下,是不是abc和123456

print的时候不用加&,只有scanf的时候要加,加&的意思是取地址,你输出的两个数是两个int值得地址,代码运行没有任何问题。
而且,这种基础到不能再基础的东西上你们初学者是搞不出大新闻的,出了错就自己好好检查检查,不会引出什么天大的漏洞。
另外你到底是输入了什么,怎么中间空了3行还都是空的。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问

相似问题

2
"input""brpws""add""Del"找不到标识符;“xuanze”:void函数返回值
3
linux C语言strcmp报错。
1
C语言萌新,对于编程思路不是很好,能否给点思路?问题在图片中!在线等 急?
2
Linux下gcc编译C代码出现段错误,提示没有strcmp.S文件,原因何在?
2
急求!!!请问我错在哪里?以及怎么改?谢谢!!!c语言 给国家的名称按字典顺序排序
3
急求!!!请问我的哪里错了?怎么改?谢谢!!!c语言 给国家的名称按字典顺序排序
0
大一c语言企业员工管理系统(救救孩子吧)
1
来大神帮忙啊!!vs2010C语言问题解决不了
1
Microsoft Visual Studio 2010 求个大神解决一下问题 帮帮忙啊!!菜鸟在线等
1
关于C语言strcmp函数的问题,求教?
0
使用FindFIrstFile和FindNextFile遍历目录
1
怎样才能把链表中的东西输出到一个文档里呀。。。
3
c++变量的定义与值的修改
3
利用PHP的iconv对中文字符转码后排序有问题吗?
1
这个程序还有一些不足,请帮我改善改善,另外还有个小问题,可否帮忙更改一下?
1
PATA1062答案部分正确是为什么?
2
帮我把下面的代码改一下,改成一直重复运行,直到用户输入N或者n,程序退出。(C/C++)
1
实在找不到到底是拿错了,一直显示百分之五十正确
1
编写了一个程序,没有报错但是不能正常运行,请各位前辈帮忙看看
2
请问为什么我在函数里面可以传递值,而出来到了主函数中却没有改变??