我有这样的C代码C代码不工作
#include <stdio.h>
int main() {
char Username[100];
char Password[100];
printf("discl0sed 0.1 discl0sed tty1\ndiscl0sed login: ");
scanf("%s", Username);
printf("Password: ");
scanf("%s", Password);
if (Username == "root" && Password == "!DISCL0SEDor1=1--")
{
return 0;
}
else
{
while (1 == 1)
{
printf("Login incorrect\ndiscl0sed login: ");
scanf("%s", Username);
printf("Password: ");
scanf("%s", Password);
printf("%s:%s", Username, Password);
if (Username == "root" && Password == "!DISCL0SEDor1=1--")
{
break;
}
else
{
continue;
}
}
}
}
这反映在Linux中tty
外壳。 问题是,当我使用正确的凭据,它说“不正确的登录”。
为什么会发生这种情况?
查找'strcmp' - Google it! –
当查看手册页 - 阅读有关'scanf' –
请打开您的编译器警告! –