读书人

关于使用标准库的有关问题

发布时间: 2012-04-12 15:46:35 作者: rapoo

关于使用标准库的问题
一般在存储字符的时候我们会用标准库string来存储,有的时候获取的是char*我们也可以转成string类型然后在用vector或者queue之类的来存储,可是如果是unsigned char*呢,我们该如何存储这些数据呢?

[解决办法]
还不是可以用string。。。计算机并不认识什么char*啊,unsigned char*啊,都是用二进制存储的。。。
[解决办法]
楼上正解,还是用string....
[解决办法]
char/singned char/unsigned char保证alignment相同没有padding bit只是算术操作表现的行为不同,要转字面量直接reinterpret_cast吧。string可以用std::basic_stirng<unsigned char>,虽然只是存储也没多大意义。
[解决办法]
memcpy
[解决办法]
先生成另一个数组:char *p=new char[333];
将buf中的内容复制到p中:memcpy(p,buf,333);
string s=p;
delete []p;
[解决办法]
char 和 wchar_t 标识字符。
char* 和 wchar_t* 标识字符串,以0结尾。

没有 unsigned char * 字符串,这标识字节流。
需要知道长度的。
一般用 vector<unsigned char>

读书人网 >C++

热点推荐