是否可以从数组中选择几个字符?
喜欢 :
std::string(charArray from 0 to 16)
没有这个过程:
char chName[16];
for(int i = 0;i<16;i++)
{
chName[i] = decrypted[i];
}
std::string characterName(chName);
如果你想std::string
用已经存在的 char 缓冲区构造和初始化 a,你可以简单地使用适当的构造函数:
std::string characterName(decrypted, 16);
You can use std::string::substr
.
Here is an example:
#include <iostream>
#include <string>
int main()
{
std::string str = "hello world";
std::string cut_str = str.substr(0, 3);
std::cout << cut_str << std::endl;
return 0;
}
This code will print "hel".
我假设你说的是你有一个大小X
的 char 数组,你想从第一个Y
字节创建一个字符串,其中Y
<X
然后你需要创建整个字符串的字符串并使用.substr(0,Y)
或执行类似的操作
char x = source[Y];
source[Y]='\0';
std::string out(source);
source[Y]=x;
这避免了循环,但以自己的方式令人讨厌。