c++中str.size()

部署运行你感兴趣的模型镜像

C++ string中str.size()计算c++字符串长度

返回字符串的长度

返回字符串的长度(以字节为单位)。

这是符合[字符串]内容的实际字节数,不一定等于其存储[容量]

注意[串]对象在不知道可能最终用于对其包含的字符进行编码的编码的情况下处理字节。因此,返回的值可能不对应于多字节或可变长度字符(例如UTF-8)序列中编码字符的实际数目。

这两个字符串::大小和[字符串::长度]是同义词,并返回相同的值。

参量

没有

返回值

字符串中的字节数。

size_t 是一个无符号整数类型(与成员类型相同) 字符串:: size_type

// string::size
#include <iostream>
#include <string>

int main ()
{
  std::string str ("Test string");
  std::cout << "The size of str is " << str.size() << " bytes.\n";
  return 0;
}

输出:

str的大小为11个字节
|

转载

http://www.cplusplus.com/string

您可能感兴趣的与本文相关的镜像

Qwen-Image

Qwen-Image

图片生成
Qwen

Qwen-Image是阿里云通义千问团队于2025年8月发布的亿参数图像生成基础模型,其最大亮点是强大的复杂文本渲染和精确图像编辑能力,能够生成包含多行、段落级中英文文本的高保真图像

### 使用方法和功能 `str.find`是 C++ 标准库中`std::string`类的成员函数,用于在字符串中查找子字符串或字符。以下是几种常见的使用形式: 1. **查找子字符串**: ```cpp #include <iostream> #include <string> int main() { std::string str1 = "Hello, World!"; std::string str2 = "World"; size_t found = str1.find(str2); if (found != std::string::npos) { std::cout << "子字符串的位置: " << found << std::endl; } else { std::cout << "未找到子字符串" << std::endl; } return 0; } ``` 这种形式是在`str1`中查找`str2`,返回`str2`中首个字符在`str1`中的位置。 2. **从指定位置开始查找子字符串**: ```cpp #include <iostream> #include <string> int main() { std::string str1 = "Hello, World!"; std::string str2 = "World"; size_t found = str1.find(str2, 5); if (found != std::string::npos) { std::cout << "从第5个字符开始查找,子字符串的位置: " << found << std::endl; } else { std::cout << "未找到子字符串" << std::endl; } return 0; } ``` 从`str1`的第五个字符开始查找`str2`。 3. **查找字符**: ```cpp #include <iostream> #include <string> int main() { std::string str1 = "Hello, World!"; char a = 'W'; size_t found = str1.find(a); if (found != std::string::npos) { std::cout << "字符的位置: " << found << std::endl; } else { std::cout << "未找到字符" << std::endl; } return 0; } ``` 在`str1`中查找字符`a`并返回第一个查找到的位置。 4. **从指定位置开始查找指定长度的子字符串**: ```cpp #include <iostream> #include <string> int main() { std::string str1 = "Hello, World!"; std::string str2 = "World"; size_t found = str1.find(str2, 2, 2); if (found != std::string::npos) { std::cout << "从第2个字符开始查找前2个字符,位置: " << found << std::endl; } else { std::cout << "未找到" << std::endl; } return 0; } ``` 在`str1`中的第二个字符开始查找`str2`的前两个字符。 ### 返回值 - 若找到,返回子字符串或字符在字符串中的位置(从 0 开始计数)。 - 若未找到,返回`std::string::npos`,这是一个特殊的常量,表示未找到匹配项[^2]。 ### 注意事项 - 查找位置是从 0 开始计数的。 - `std::string::npos`通常被定义为`size_t`类型的最大值,在比较时要确保使用`size_t`类型的变量来接收返回值,避免隐式类型转换带来的问题。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值