QByteArray str3="00 10 10 00 00 01 02 03 20";
unsigned char buff[9];
memcpy( &buff, str3,2*sizeof(str3));
为什么QByteArray转char的结果为buff= 0x253bfbf908
你应该用QByteArray::data()
来返回QByteArray内部的字符数组指针。
#include <QtCore/QByteArray>
int main() {
QByteArray str = "00 10 10 00 00 01 02 03 20";
char buff[100];
memcpy(buff, str.data(), strlen(str.data()));
printf("%s\n", buff);
return 0;
}
不能这么搞吧,QByteArray是个动态数组,又不是普通数组