• 12202阅读
  • 7回复

[已解决]QByteArray转化为无符号字符的问题 [复制链接]

上一主题 下一主题
离线qiao
 
只看楼主 倒序阅读 楼主  发表于: 2010-01-26
首先谢谢大家关注我的问题。提一个很菜的问题,如下:

Qt中的QByteArray默认是char型数组,它有toShor(),toUint()等函数可以转换类型。但是如何把它转换为无符号型(unsigned char)的数组呢?

也许这个问题很简单,但是对我而言是困扰了几天的问题。先谢谢大家!
[ 此帖被qiao在2010-01-26 15:05重新编辑 ]
离线yangfanxing
只看该作者 1楼 发表于: 2010-01-26
unsigned char = uchar = quint8
到用的时候转化下类型吧???
PHPWind好恶心。。。不想看这种界面。。。
离线午小夜

只看该作者 2楼 发表于: 2010-01-26
QByteArray -> QChar -> uchar
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线nmiirq

只看该作者 3楼 发表于: 2010-01-26
强转!
离线qiao
只看该作者 4楼 发表于: 2010-01-26
回复楼上两位
首先谢谢关注我的问题,可能我没有把问题描述清楚,我再描述相关代码如下:

  1. void ConvertYUV2RGB(unsigned char *src0,unsigned char *dst_ori,int width,int height);
  2. QFile file("y.yuv");
  3. QFile file1(pp.rgb)
  4. file.open(QIODevice::ReadOnly);
  5. file1.open(QIODevice::WriteOnly);
  6. QByteArray array=file.readAll();
  7. QByteArray array1;


我现在需要调用 ConvertYUV2RGB()函数,但是函数要求的是unsigned char的指针,这就我要解决的问题。

回复1楼:你是说使用类似这样的uchar(array)的语句吗?但是这种语句编译是通不过的。

回复2楼:你是说先转化为QChar,在转化为uchar吗?能否具体说明具体代码。谢谢!
离线yangfanxing
只看该作者 5楼 发表于: 2010-01-26
uchar *thePointerYouNeed = (uchar *)(array.data());
2条评分好评度+1金钱+1
brove8 好评度 +1 有用,谢谢啦 2016-05-17
brove8 金钱 +1 有用,谢谢啦 2016-05-17
PHPWind好恶心。。。不想看这种界面。。。
离线yangfanxing
只看该作者 6楼 发表于: 2010-01-26
uchar(array)这个显然不能对。
PHPWind好恶心。。。不想看这种界面。。。
离线qiao
只看该作者 7楼 发表于: 2010-01-26
回 6楼(yangfanxing) 的帖子
谢谢yangfanxing!!


问题已经解决。我对于指针和qt的理解还是不深入。

再次感谢!
快速回复
限100 字节
 
上一个 下一个