Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/135.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ if语句中识别为9的8个字符_C++_Arrays_If Statement_Character - Fatal编程技术网

C++ if语句中识别为9的8个字符

C++ if语句中识别为9的8个字符,c++,arrays,if-statement,character,C++,Arrays,If Statement,Character,我想做一个if语句,看看这个名字是否等于一个特定的单词。该名称只有8个字符长,因此我只能将其与8个或更少字符的单词进行比较 但我遇到的问题是,如果我比较这两个值,我会得到这个错误: “正在初始化”:无法从“初始值设定项列表”转换为 'std::array' 当我从字符串中删除一个字母时,我想将它与它进行比较,但它不再给出错误。但为什么VisualStudio认为只有9个字符,而只有8个字符,这对我来说似乎没有意义。我以前使用比较来检查只有4个字符的字符串,这似乎很好 if (lumps[i +

我想做一个if语句,看看这个名字是否等于一个特定的单词。该名称只有8个字符长,因此我只能将其与8个或更少字符的单词进行比较

但我遇到的问题是,如果我比较这两个值,我会得到这个错误:

“正在初始化”:无法从“初始值设定项列表”转换为 'std::array'

当我从字符串中删除一个字母时,我想将它与它进行比较,但它不再给出错误。但为什么VisualStudio认为只有9个字符,而只有8个字符,这对我来说似乎没有意义。我以前使用比较来检查只有4个字符的字符串,这似乎很好

if (lumps[i + h].name == TFixedString<8>{"LINEDEFS"})
{

}
if(lumps[i+h].name==TFixedString{“LINEDEFS”})
{
}

所有数组都从0开始,所以如果你有一个8的数组,它实际上是9。

这看起来像是
c++
或者基于错误消息的东西,而不是
c
。什么是
TFixedString
定义的?而
将[i+h]集为一块。name
,这是std::string吗?@user3678781类型对您来说无关紧要?
“LINEDEFS”
实际上包含8个字符加上终止的
“\0”
字符。因此9。嗯,当我想要比较的名字似乎是9个字符时,我怎么能比较呢?我意识到我把C代替C++,我的错是什么?编号
inta[10]提供10个元素,索引范围从0到9。我的意思是,如果你有一个5的数组,你想打印出一个名称,比如“James”,它只会打印出“Jame”,因为空终止符需要在array@ProgStudent如果你是那个意思,那就是你应该说的。