我已经在CPP中分配了一个具有初始大小的字符串数组,我需要根据计数器动态调整其大小。
这是初始化语句:string buffer [10]; 我需要根据计数器调整大小。 cpp中有一个realloc函数吗?
答案 0 :(得分:1)
您应该使用诸如std::vector
或std::list
之类的链表,这是一个示例:
#include <iostream>
#include <stdlib.h>
#include <string>
#include <list>
using namespace std;
int main()
{
list<string> buffer;
int count = 0;
while (true)
{
string s;
cin >> s;
if (s._Equal("exit"))
break;
buffer.push_back(s);
count++;
}
cout << endl << endl << "We have a total of " << count << " string(s):";
for (auto i = buffer.begin(); i != buffer.end(); i++)
cout << endl << "- " << (*i).c_str();
cout << endl << endl;
system("pause");
return 0;
}
链接:std::vector
std :: vector是封装动态大小数组的序列容器。