【发布时间】:2015-10-23 20:45:46
【问题描述】:
在第一部分代码中,它检查用户是否输入了匹配的用户名和密码,如果是,则我们登录客户端。这部分代码很好。它应该在它应该工作的时候工作。
第一个代码:
//If the user entered a username & pass that matches a stored user & pass
if (incomingClients[i].username == existingClients[e].username) {
if (incomingClients[i].password == existingClients[e].password) {
//LogInClient();
}
}
在第二部分,它应该检查用户是否输入了一个不存在的用户名,如果不存在,那么我们告诉用户他/她输入了一个不存在的用户名。
第二个代码:
//If the user entered a username that DOES NOT match a stored user
if (incomingClients[i].username != existingClients[e].username) {
//NotifyClientUserDoesntExist();
}
我在这里遇到的问题是第二个代码总是正确的。为什么是这样?
如果我输入的用户名存在,第一个代码会执行,但第二个代码也会执行。如果incoming.username 不等于existing.username,我只希望执行第二个代码。
提前谢谢你。
【问题讨论】:
-
请显示MVCE。你甚至没有告诉我们
username的类型,这很重要。
标签: c++ arrays equals string-comparison