1
我已经在C中获得了良好的曝光度,但对于C++来说却是新手。我想知道,有没有办法将C++字符串限制为字符数。例如:如果我想声明一个名为“circle”的字符串,我可以将字符数限制为50吗? (就像我们以前用C做的char char [50])在C++中将字符串大小限制为字符数
我已经在C中获得了良好的曝光度,但对于C++来说却是新手。我想知道,有没有办法将C++字符串限制为字符数。例如:如果我想声明一个名为“circle”的字符串,我可以将字符数限制为50吗? (就像我们以前用C做的char char [50])在C++中将字符串大小限制为字符数
我可以限制字符数为50吗?
可以构造字符串与容量通过使用容纳50个字符:
std::string str(50, '\0');
然而,不同于C数组,可以通过增加更多的数据以将其以增加其大小。
实施例:
#include <iostream>
#include <string>
int main()
{
std::string str(50, '\0');
for (size_t i = 0; i < 49; ++i)
{
str[i] = 'A'+i;
}
std::cout << str << std::endl;
str += " Some more characters.";
std::cout << str << std::endl;
}
输出:
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq
ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopq Some more characters.
谢谢@R_Sahu,这有助于很多! – Shrey
如果使用C++使用字符串数据类型。用'C' ++做事情不是'C'ish的方式。 –
***如果我想声明一个名为“circle”的字符串***在'C++'中,您将它作为'std :: string circle;'并且让C++在需要时处理调整缓冲区大小的细节。最终你的班级会教你'C++'。然而,我认为你现在不被允许使用它。 – drescherjm
是的,这是我想知道的,如何分配50字节的大小以C++ ish方式的字符串。 – Shrey