这是改变string对象capacity大小的一个命令,能将capacity的大小改变使其大于等于n。 如果n比当前对象的capacity大,则这个函数会将string对象扩容至大于等于n。 当n小于capacity时,这个行为是为被C++标准定义的,具体行为取决于编译器: 一种编译器(如VS),会选择无视这条命令,cpacity保持原来的大小。 另一种编译器(Linux下
一:size()、length()与capacity() 这几个函数相对来说还是很好理解,我们就不对其再做具体介绍,看一段代码即懂! ⚠️代码示例: void TestString01(){ string s("hello pxl!!!"); cout << s.size() << endl; cout << s.length() << endl; cout << s.capacity() << endl; cout <<"s:"...
2.2 string类对象的容量操作(Capacity) 1、size和length size和length其实是一样的, 都代表字符串的长度,但是早期STL还没出现的时候,strling类用的是length,但是后来STL出来后,里面大部分都是用的size,所以为了保持一致性又造了一个size出来,平时用哪个都可以的。 2、capacity 表示string当前的容量,一般来说是默认...
string s;s.reserve(100);size_t sz=s.capacity();cout<<"making s grow:\n";cout<<sz<<endl;for(int i=0;i<100;++i){s.push_back('c');if(sz!=s.capacity()){sz=s.capacity();cout<<"capacity changed: "<<sz<<'\n';}} 在linux里面: reserve会不会缩容呢? 来看看代码: 代码语言:...
如果大于,则在末端插入尽可能多的字符来扩展当前内容,以达到大小n。 如果指定c,则新元素将初始化为c的副本,否则为值初始化字符(空字符)。 string.capacity(): 返回已分配存储的大小。当前为字符串分配的存储空间的大小,以字节表示。 此容量不一定等于字符串长度。 它可以相等或更大,额外的空间允许对象在将新字符...
size_tlength()const; // 返回字符串长度size_tsize()const;size_tcapacity()const; // 返回字符串容量boolempty()const; // 判断字符串是否为空voidclear(); // 清空字符串voidreserve(size_t); // 扩展字符串容量例如,以下代码获取一个字符串的长度、判断一个字符串是否为空、清空一个...
std::string::capacity():用于获得字符串容量 std::string::empty():用于判断字符串是否为空 std::string::data():用于返回字符串内部的字符数组 std::string::c_str():用于返回字符串内部的C风格字符串 std::string::substr():用于返回从给定位置开始的给定长度的子串 ...
转:STL:string 大小(Size)和容量(Capacity) strings存在三种“大小”: 1、size()和length() 返回string中现在的字符个数。上述两个函数等效。 成员函数empty()用来检验字符数是否为0,亦即字符串是否为空。你应该优先使用该函数,因为它比length()或size()来得快。
#include<iostream>#include<string>#include<stdlib.h>#include<windows.h>usingnamespacestd;intmain(intargc,char**argv){stringstr;for(inti=0;i<100;i++){str+='a';std::cout<<"size : "<<str.size()<<" capacity : "<<str.capacity()<<std::endl;}system("pause");return0;} ...
Capacity: 11Capacity after reserve: 30Length: 11Size: 11After resize: Hello Wo 3.输出 输出全部 1、使用<<运算符输出 2、使用函数c_str()返回const char *,然后打印 #include <iostream>#include <string>int main() {std::string str = "Hello, World!";// 使用 << 运算符输出std::cout << ...