gpt4 book ai didi

c - 错误:warning comparison between pointer and integer

转载 作者:行者123 更新时间:2023-11-30 21:24:43 25 4
gpt4 key购买 nike

#include <stdio.h>

int main()
{
int user,pass;

printf("New Username:\n");
scanf("%d",&user);
printf("New Password:\n");
scanf("%d",&pass);
printf("Type your username:\n");
scanf("%d",&user);
if ("%d"==&user)
{
printf("Username is good !!!!");
}
else
{
printf("Username is not good");
}
printf("type your password:\n ");
scanf("%d",&pass);
if ("%d"==pass)
{
printf("The password is good");
}
else
{
printf("The password is not good");
}
return 0;
}

请帮助给我警告说:指针和整数之间的警告比较为什么???怎么了??

warning comparison between pointer and integer comparison with string literal results in unspecified behavior

最佳答案

if ("%d"==pass)

将字符串文字与整数进行比较?为什么?这是没有意义的。您的整数传递永远不能等于字符串文字 "%d" (顺便说一句,它是 {'%','d','\0'})

该检查完全是多余的。

if ("%d"==&user)

那更糟糕,这就是你的警告的来源。您正在将指向 int 的指针与字符串文字进行比较。

如果您想检查您的用户名和密码是否确实是整数,则无需这样做,因为 scanf 会为您完成此操作。

关于c - 错误:warning comparison between pointer and integer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35127433/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com