如何将C++中string类型的字符串赋给unsigned char数组

2024-11-30 01:10:08
推荐回答(2个)
回答1:

如何将C++中string类型的字符串转化为unsigned char数组
std::string str("str");

由于string内部本身就是char的动态数组
另外char和unsigned char的存储空间完全一样 都是1byte

一般直接 &str[0]就可以了
如果要复制的话
unsigned char arr[size] = {0}; //这个size 要大于 str.size();
memcpy(arr, &str[0], str.size());

如何将C++中string类型的字符串转化为wchat_t类型数组
字符编码不样的
可以用windows的MultibyteToWidechar
如果要跨平台的话建议直接用iconv处理

回答2:

写了unsigned char的,另一个类型照抄

#include 
#include 

using namespace std;

int main()
{
string s="i like it";
unsigned char str[200];

int len=s.length();

for(int i=0;i str[i]=s[i];
str[i]='\0';

cout<}