我目前正在学习c++中的文件处理。我想检查用户在开始时输入的用户名是否与他在结束时输入的用于写入TXT文件的用户名相同。
我尝试运行一个循环,并将索引[0]处的char数组与字符串索引[0]进行比较。
代码解释:getuser-在开头输入的用户名(字符串(
user-现在输入用户名(字符数组(
char user[16];
for(int i = 0; i < getUser.length(); i++){
if(!(user[i] == getUser[i])){
cout << "enter right username!";
exit(1);
}
}
我希望循环检查每个字符,如果正确,它将继续,否则它将打印一条错误消息并返回1退出。
user
变量是否需要是char数组?如果不是,则可以使用std::string
类型和std::string::compare
方法。如果字符串匹配,则返回0
。
std::string firstUser ("foo");
std::string secondUser ("bar");
if (firstUser.compare(secondUser) != 0) std::cout << "enter right username!";
else std::cout << "well done!";
compare
方法有一些有趣的变体,您应该查看此处的参考资料。