尝试使用 indexOf 创建一个 if 语句来检查字符串是否包含字符.有一点麻烦
Trying to make an if statement that checks if a string contains a character using indexOf. Having a little bit of trouble
我希望它是如果字符串包含某个字符,它会做一件事。例如,如果Serial.readString();
读取X100Y100那么我想检查它是否包含 X。到目前为止,我所拥有的是:
void serialEvent() {
serialData = Serial.readString();
if (serialData.indexOf('X')) {
serX.write(parseDataX(serialData));
} else {
// Doesnt contain the character X
}
}
这行得通吗?
如果找到X
,indexOf()
将返回其索引。如果在索引 0 处找到它,则if
语句的计算结果将为 false。同样,如果未找到X
,indexOf()
将返回-1
,您的if
语句将评估为 true。要检查X
是否存在serialData
,您需要检查indexOf()
是否不返回-1
:
if (serialData.indexOf('X') != -1)
有关详细信息,请参阅indexOf()
文档。
相关文章:
- 在提升multi_index容器中,是否定义了"default index"?
- 在C++STL中是否有Polyval(Matlab函数)等价物?
- 检查输入是否不是整数或数字
- 是否可以初始化不可复制类型的成员变量(或基类)
- 在C++中,是否可以基于给定的标识符创建基类的新实例,反之亦然
- 是否可以通过C++扩展强制多个python进程共享同一内存
- 此代码是否违反一个定义规则
- 是否需要删除包含对象的"pair"?
- 是否可以从int转换为enum类类型
- 无论条件是否为true,if总是在c++中执行
- 如何找到大小'x'数组是否完全填充,在C++?
- 检查值是否在集合p1和p2中,但不在p3中
- 是否可以在编译时初始化数组,以便在运行时不会花费时间?
- 检查 std::shared_ptr<> 的当前底层类型是否为 T
- 在c++中检查长方体是否尽可能快地重叠(无迭代)
- GL_SHADERSTORAGE_BUFFER位置是否与其他着色器位置冲突
- 子目录是否继承属性,例如add_definitions,include_directories和父Cmakelist.t
- 标准是否使用多余的大括号(例如 T{{{10}}})定义列表初始化?
- 尝试使用 indexOf 创建一个 if 语句来检查字符串是否包含字符.有一点麻烦
- 调用在函数调用期间重新分配的“std::vector”元素的函数是否会导致麻烦