是否可以将Char*与字符串变量进行比较?

Is it possible to compare a Char* to a string variable?

本文关键字:变量 比较 字符串 Char 是否      更新时间:2023-10-16

对于学校的作业,我们必须将230万个密码存储到一个动态字符中。我必须根据所有这些密码检查用户的密码,以确保它不在列表中。

如果用户的密码在列表中,他们的密码的强度会减少1分。

我已经试过了:

int i = 1, maxSize = 2300000, passwordList = 1;
char* passCommon = NULL;
passCommon = new char[mazSize];
string password = "JohnDoe";     // Use this for example.
for (i=0; i > maxSize; i++)
{ 
  if(password == passCommon[i])
  {
    passwordList = 0;
    break;
  }
}

我做错了什么?

首先,动态创建一个老式字符串:

passCommon = new char[mazSize];

一个字符串,不是很多。如果要创建一个零字符串数组,应该使用:

char **passCommon = nullptr;

注意两个星号,而不是一个。标识符附近应该有星号。然后,您应该动态地创建一个char *(指向char数组的指针)数组。然后循环遍历该数组,并在每次迭代中动态创建一个赋值给指针的char数组。

我很抱歉我的英语很差,但我希望我能做些对你有用的事情。我认为你可以将230万个密码存储在字符串(如vector)容器中,你可以比较它们:password == passCommon[i]