首页 > 解决方案 > 如何在 C++ 中声明固定大小长度的字符串?

问题描述

我想声明一个大小为“N”的变量。还有一个固定长度的字符串'N'。另外,如何在运行时为该字符串赋予价值?

就像,我试过 cin>>N; 字符串 str(4);

没有匹配函数调用'std::__cxx11::basic_string::basic_string(int)'

标签: c++stringc++14

解决方案


好吧,没有构造函数std::string,它只接受一个大小参数。您还需要提供一个char值,该值将用作字符串中每个字符的初始值。例如,要有一串N空格,您可以:

std::string str(N, ' ');

但是,字符串不会是固定大小的。您仍然可以稍后更改其长度:

str += ' '; // Now it contains N + 1 spaces.

std::string除非你做出来,否则你不可能有一个固定的尺寸const。但是如果你这样做了,那么你就不能再改变字符串的内容了。


推荐阅读