- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是一名初学者程序员,如果要了解代码及其工作原理,我会尽力了解这一部分。
所以这是代码:
#include <iostream>
#include <string> //C++ Strings Library
using namespace std;
int main() {
string s1 {};
string wordFind {};
s1 = "The secret word is Boo";
cout << "Enter the word to find: ";
cin >> wordFind;
size_t position = s1.find(wordFind);
if (position != string::npos)
cout << "Found " << wordFind << " at position: " << position << endl;
else
cout << "Sorry! " << wordFind << " not found" << endl;
return 0;
}
size_t
,什么时候应确切使用它们?(我所知道的是,我们应该将它们用于数组索引和循环计数)size_t
?难道不是这样吗?:position = s1.find(wordFind);
最佳答案
What is
size_t
and when should we use them exactly?(All I know is that we should use them for array indexing and loop counting)
size_t
是一个无符号整数类型,其大小足以表示C++中任何对象的大小,包括数组类型。 (大小以字节为单位)。
Why did we use
size_t
here?
int
可以存储的最大数目,那么使用
int
这样的东西是不够的。从学步上来说,您应该使用
std::string::size_type
,无论它多大,都可以保证
std::string
的大小。
couldn't it be like this?:
position = s1.find(wordFind);
position
的类型。或者,您可以使用
auto
:
auto position = s1.find(wordFind);
What is position exactly?(I mean is it made up or is it a part of C++?)
Does the if condition mean to search the word untill the end of the string?
std::string::npos
是一个特殊数字,如果找不到所需的子字符串,则
std::string::find
返回。
关于c++ - C++字符串:size_t和字符串::npos,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60031225/
我想使用 -1 来表示尚未计算的大小: std::vector sizes(nResults, -1); 我想知道为什么没有更具表现力的方式: std::vector sizes(nResults,
您好,我目前是一年级学生,仍在学习 R 在线类(class),我收到一条错误消息:“ans[npos] <- rep(no, length.out = len)[npos] 中的错误:替换的长度为零另
我正在对一个字符串进行一系列搜索,并且在该行的某处会遗漏一个字符串,并且我的一组搜索应该会失败。 我原以为一旦位置达到 std::string::npos 它就会留在那里,但事实并非如此。将 std:
在自定义类的自定义 find() 方法返回自定义数据结构中元素的索引位置的场景中,有没有比返回 string::npos 更优雅的东西? find() 方法的返回类型是size_t。所以我需要它的类型
我是 C++ 的新手,刚从 Java 转过来,对此感到疑惑: pos = result.find(remove[i]); if (pos == string::npo
我正在阅读一本关于 C++ 的书,它只是介绍了如何使用 string::npos 检查字符串中是否存在字符位置。不过,我不明白这种机制怎么可能知道我指的是哪个字符串!此特定代码正在计算子字符串的出现次
这个问题在这里已经有了答案: What does string::npos mean in this code? (12 个答案) 关闭 9 年前。 下面的语句是什么意思? string s
以下代码片段中的短语 std::string::npos 是什么意思? found = str.find(str2); if (found != std::string::npos) std:
我的问题基本上是,每当我使用 Visual Studio(Windows 10 计算机上的 2015 社区版)进行调试时,当我尝试将鼠标悬停在变量上或查看调试 View 的本地或自动部分中的变量时,我
我是一名初学者程序员,如果要了解代码及其工作原理,我会尽力了解这一部分。 所以这是代码: #include #include //C++ Strings Library using namesp
我的代码计算字符串 temp 中的空格,效果很好。在代码的后面,我有一个类似的循环,但没有按预期结束。 根据我的调试和一些研究,我确定 while 循环没有在应该停止的时候停止第二次,因此抛出异常(s
std::string.npos 曾经有效吗? (与正确的 std::string::npos 相反。) 我在我正在处理的一个旧项目中经常看到它,它不能用 VS2010 编译。 它是前标准时代的东西吗
我编写了一个程序,使用 find_last_of 方法在字符串中查找字符。 // ... unsigned found; found = name.find_last_of(character); i
我正在尝试让这个函数分割一个字符串,然后在不带空格且全部小写的情况下返回它。为此,我试图找到一个 "" 来查看字符串 "The Time Traveler (for so it would be co
标题相对不言自明。我认识到与其他答案的相似性,但所有这些都有不同的运算符安排(因此有不同的转换规则)。所以我需要一个可以澄清这个特殊情况的答案。 如果有人能指出解释这一点的标准部分,我会很乐意投票并接
我收到一个错误: error: comparison of constant 18446744073709551614 with expression of type 'unsigned in
这个问题在这里已经有了答案: Why is (18446744073709551615 == -1) true? (4 个答案) 关闭 5 年前。 在构造函数中: CSVBMFBlockModelR
#include #include #include #include using namespace std; int main(int argc, char* argv[]) { ifst
请查看下面的代码片段,特别是第一个“else if”语句。我希望用户能够执行此操作: 加载文件名 所以我想检查“load”是否在字符串中,并尝试打开“load”之后的任何内容。然而,string::n
如果std::size_type的 std::string是默认分配器的, 21.3.1 Class template basic_string typedef typename allocator_
我是一名优秀的程序员,十分优秀!