QtQString转char[]数组
这个问题是我在项⽬中遇见最简单,却调试时间最长的⼀个问题。
存储过程 字符串转数组
下⾯我把我的解决⽅法发出来供⼤家参考。
这是结构体定义。
1 typedef struct PersonData{
2int use_id;
3char name[10];
4int passwd;
5int passwds;
6int money;
7int flag;
8 }Recv_MSG;
下⾯是对从lineedit上读取的QString进⾏转换到char name[10]⾥⾯去。
1char* ptr;
2 QByteArray ba;
3 QString str = ui->namelineEdit->text();
4 ba = Latin1();
5 ptr = ba.data();
6 memcpy(p->name,ptr,10); //就是这⼀句,必须加,不然不只是把指针指向了值,并没有赋值
重点就是最后⼀句,memcpy(),把ptr例转换的值,赋给p->name。不然,你要是传递结构体,就只是传过去⼀个指针,并没有内容。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。