C ERORR:指针和整数之间的警告比较
请帮我警告一下:指针和整数之间的比较为什么会有警告????? 怎么了 指针和整数之间的警告比较 与字符串文字进行比较会导致未指定的行为 将字符串文字与整数进行比较?为什么?这毫无意义。整数传递永远不能等于字符串文字%d,它是{“%”、'd'、'\0'}顺便说一句 那张支票真是太贵了C ERORR:指针和整数之间的警告比较,c,compiler-errors,C,Compiler Errors,请帮我警告一下:指针和整数之间的比较为什么会有警告????? 怎么了 指针和整数之间的警告比较 与字符串文字进行比较会导致未指定的行为 将字符串文字与整数进行比较?为什么?这毫无意义。整数传递永远不能等于字符串文字%d,它是{“%”、'd'、'\0'}顺便说一句 那张支票真是太贵了 if ("%d"==pass) 更糟糕的是,这就是你的警告的来源。您正在将指向int的指针与字符串文字进行比较 如果您想检查用户名和密码是否为整数,则无需执行此操作,因为scanf会为您执行此操作。有两个错误 if
if ("%d"==pass)
更糟糕的是,这就是你的警告的来源。您正在将指向int的指针与字符串文字进行比较
如果您想检查用户名和密码是否为整数,则无需执行此操作,因为scanf会为您执行此操作。有两个错误
if ("%d"==&user)
这里比较pass变量的值和字符串文字。这是错误的,也不是必需的
及
这里比较的是用户变量的addrerss和字符串文本。这是错误的,也不是必需的
我已尝试将您的代码修改为某个级别。我想这就是你想要的
是的,对于用户名,您需要使用字符数组来存储名称,并使用strcmp来匹配它们
if ("%d"==&user)
如果%d==&user,我的意思是,真的吗?它不好还是什么??:这是没有意义的-你正在比较一个控制字符串和变量的地址-这是没有意义的。因为你把英语和一些语言混淆了?很难帮忙/你为什么笑。。。我是C语言新手。我主要在python中工作您确实需要检查scanf返回的值。现在,您不知道对scanf的任何调用是否真的读取了数据。@KevinIT没问题。请不要在以后调试前提问。亲爱的down投票者,请注意评论,我喜欢从自己的错误中学习。
if ("%d"==pass)
if ("%d"==&user)
#include <stdio.h>
int main()
{
int user_org,pass_org;
int user,pass;
// First store original username and password
printf("Orignal Username:\n");
scanf("%d",&user_org);
printf("Original Password:\n");
scanf("%d",&pass_org);
// Check for username
printf("Type your username:\n");
scanf("%d",&user);
if (user_org == user)
{
printf("Username match");
}
else
{
printf("Username is incorrect");
}
// check for password
printf("type your password:\n ");
scanf("%d",&pass);
if (pass_org == pass)
{
printf("The password match");
}
else
{
printf("The password is not correct");
}
return 0;
}