gpt4 book ai didi

c++ - 如何检查字符串中存储的 "\t"?

转载 作者:太空宇宙 更新时间:2023-11-04 15:38:15 25 4
gpt4 key购买 nike

有人可以向我解释如何正确搜索存储在字符串类中的“制表符”吗?

例如:

text.txt 内容:

        std::cout << "Hello"; // contains one tab space 

用户在提示符下输入:./a.out < text.txt

主要.cpp:

string arrey;
getline(cin, arrey);
int i = 0;
while( i != 10){
if(arrey[i] == "\t") // error here
{
std::cout << "I found a tab!!!!"
}
i++;
}

由于文本文件中只有一个制表符空间,我假设它存储在索引 [0] 中,但问题是我似乎无法进行比较而且我不知道任何其他方式搜索它。有人可以帮助解释替代方案吗?

错误:ISO C++ 禁止比较指针和整数

最佳答案

首先,什么是i?其次,当您使用 std::string 对象的数组索引时,您得到的是 character(即 char)而不是字符串。

char 被转换为 int,然后编译器尝试将该 int 与指向字符串文字的指针进行比较,然后您无法将普通整数与指针进行比较。

但是您可以将一个字符与另一个字符进行比较,例如

arrey[i] == '\t'

关于c++ - 如何检查字符串中存储的 "\t"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28246076/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com