Qt中的QString与char*的转换

来源:互联网 发布:温州动车事故 知乎 编辑:程序博客网 时间:2024/04/30 12:44
对于这些基本的数据类型的转换有时会弄得我们很头疼。不会写,不敢写,写了怕错。虽然现在跑qt下了,这不遇见了第一次需要数据类型转换的时候了。

  先说Qt中的QString如何转char*吧。

int main(int argc, char **argv)
{
QApplication app(argc, argv);
QString str1 = “Test”;
QByteArray ba = str1.toLatin1();
const char *c_str2 = ba.data();
printf(“str2: %s”, c_str2);
return app.exec();
}
  这里得注意,中间的ba变量是必不可少的,不能直接用str1.toLatin1().data()。

  然后就是char*转QString:

  方法一:QString string = QString(QLatin1String(c_str2)) ;

  方法二:如果是中文系统,直接用 (const char*) str.local8Bit()
      例如
         printf(“%s”, (const char*) str.local8Bit());
         str是一个QString

  记录了一些自己学习过程中的知识,希望对你有帮助,也希望转载能保留原文地址。谢。

阅读(617) | 评论(0) | 转发(0) |
0

上一篇:在Qt中使用OpenCV库

下一篇:Opencv中如何实现图像截取

相关热门文章
  • linux 常见服务端口
  • 什么是shell
  • linux socket的bug??
  • linux的线程是否受到了保护?...
  • 一个适用于windows和linux的抓...
  • debian7系统与ATI X2300显卡...
  • ubuntu sysklogd之配置文件介...
  • 自己用的ubuntu环境搭建(一)...
  • linux 学习心得
  • 用户输入操作和数据的显示...
给主人留下些什么吧!~~
原创粉丝点击