zoukankan      html  css  js  c++  java
  • Qt之数据类型转换

    学习和使用Qt也有差不多半年了,想着半年前一个刚看完《C++ Primer》的超级大菜鸟,到现在能够基本独立完成实验室上位机软件开发的小菜鸟,Qt的学习让我加深了对《C++ Primer》的理解,更培养了我查文档的能力。这半年来,学到了很多,却由于没有及时记录忘了很多。对着之前的项目,把经验留在这,亡羊补牢。

    关于Qt5的学习,突然发现了一篇非常好的教程,非常详细,感谢作者。

    Qt的数据类型与标准c++是不一样的,在开发的时候,必然会涉及到很多数据类型的转换。早已厌倦了百度QString转QByteArray,QByteArray转char*,QString转string......。Qt的第一篇文章,就先来总结一下我用过的数据之间的转换。

    1、QString转QByteArray

    QByteArray byte;
    QString string;
    byte = string.toLatin1();

    2、QByteArray转QString

    QByteArray byte;
    QString string;
    string = QString(byte);

    3、QString转String

    QString string;

    std::string str;

    str = string.toStdString();

    4、String转QString

    QString string;

    std::string str;

    string = QString::fromStdString(str);

    5、QByteArray转char *

    char *ch;         //不能定义成ch[n],数组和指针不一样;
    QByteArray byte;
    ch = byte.data();

    6、char *转QByteArray

    char *ch;
    QByteArray byte;
    byte = QByteArray(ch);

    7、QString转char *

    QString string;
    char *ch;
    ch = string.toLatin1.data();

    8、char *转QString

    char *ch;

    QString string= QString(QLatin1String(ch));

    9、QHostAddress转QString

    QHostAddress address;

    QString string = address.toString();

    10、QString转QHostAddress

    QString string;

    QHostAddress address(string);

    11、QString转unsigned char

    QString string;

    bool ok;

    unsigned char uch = string.toInt(&ok, 16);

    12、unsigned char转QString

    unsigned char uch;

    QString string = QString::number(uch,16);

    13、int转QString

    int m;
    QString string;
    string=QString::number(m);

    14、QString转int

    QString string;
    int m;
    m=string.toInt();

    11和12主要用在串口通信中,把收到的数据转成QString后用于显示。

    其实,number这个函数不仅仅能够转换成int型,还能转换成double,long等等,还可以16进制转换,非常强大。

    以上是我经常碰到的,其实用好帮助文档也是一样,只是有个归纳的找起来方便而已。

  • 相关阅读:
    Egret白鹭开发小游戏中容易犯的错
    egret之消除游戏开发
    Jmeter学习之— 参数化、关联、断言、数据库的操作
    JMeter学习-031-JMeter 3.0 POST Body Data 中文乱码问题
    Nginx负载均衡的五种策略
    Linux性能监控分析命令(五)—free命令介绍
    Linux性能监控分析命令(四)—top命令介绍
    ssh连接时提示THE AUTHENTICITY OF HOST XX CAN'T BE ESTABLISHED
    Linux性能监控分析命令(二)—sar命令介绍
    jProfiler远程连接Linux监控jvm1运行状态
  • 原文地址:https://www.cnblogs.com/jiasaidongqi/p/4390145.html
Copyright © 2011-2022 走看看