zoukankan      html  css  js  c++  java
  • qt 字符类型转换

    char * 与 const char *的转换
    char *ch1="hello11";
    const char *ch2="hello22";
    ch2 = ch1;//不报错,但有警告
    ch1 = (char *)ch2;

    char 转换为 QString
    其实方法有很多中,我用的是:
    char a='b';
    QString str;
    str=QString(a);

    QString 转换为 char
    方法也用很多中
    QString str="abc";
    char *ch;
    ch = str.toLatin1.data();

    QByteArray 转换为 char *
    char *ch;//不要定义成ch[n];
    QByteArray byte;
    ch = byte.data();

    char * 转换为 QByteArray
    char *ch;
    QByteArray byte;
    byte = QByteArray(ch);

    QString 转换为 QByteArray
    QByteArray byte;
    QString string;
    byte = string.toAscii();


    QByteArray 转换为 QString
    QByteArray byte;
    QString string;
    string = QString(byte);
    这里再对这俩中类型的输出总结一下:
    qDebug()<<"print";
    qDebug()<<tr("print");
    qDebug()<<ch;(ch 为char类型)
    qDebug()<<tr(ch);
    qDebug()<<byteArray;(byteArray是QByteArray类型)
    qDebug()<<tr(byteArray);
    qDebug()<<str;(str 为Qstring类型)
    但是qDebug()<<tr(str);是不可以的,要想用tr()函数输出QString类型的字符则要如下:
    qDebug()<<tr(str.toLatin1);

    int 转 QString
    int a=10;
    QString b;
    b=QString::number(a)

    QString 转int
    QString a="120"
    int b;
    b=a.toInt()

    char * 与 const char *的转换
    char *ch1="hello11";
    const char *ch2="hello22";
    ch2 = ch1;//不报错,但有警告
    ch1 = (char *)ch2;

    char 转换为 QString
    其实方法有很多中,我用的是:
    char a='b';
    QString str;
    str=QString(a);

    QString 转换为 char
    方法也用很多中
    QString str="abc";
    char *ch;
    ch = str.toLatin1.data();

    QByteArray 转换为 char *
    char *ch;//不要定义成ch[n];
    QByteArray byte;
    ch = byte.data();

    char * 转换为 QByteArray
    char *ch;
    QByteArray byte;
    byte = QByteArray(ch);

    QString 转换为 QByteArray
    QByteArray byte;
    QString string;
    byte = string.toAscii();


    QByteArray 转换为 QString
    QByteArray byte;
    QString string;
    string = QString(byte);
    这里再对这俩中类型的输出总结一下:
    qDebug()<<"print";
    qDebug()<<tr("print");
    qDebug()<<ch;(ch 为char类型)
    qDebug()<<tr(ch);
    qDebug()<<byteArray;(byteArray是QByteArray类型)
    qDebug()<<tr(byteArray);
    qDebug()<<str;(str 为Qstring类型)
    但是qDebug()<<tr(str);是不可以的,要想用tr()函数输出QString类型的字符则要如下:
    qDebug()<<tr(str.toLatin1);

    int 转 QString
    int a=10;
    QString b;
    b=QString::number(a)

    QString 转int
    QString a="120"
    int b;
    b=a.toInt()

    另一个

  • 相关阅读:
    【Codechef】Chef and Bike(二维多项式插值)
    USACO 完结的一些感想
    USACO 6.5 Checker Challenge
    USACO 6.5 The Clocks
    USACO 6.5 Betsy's Tour (插头dp)
    USACO 6.5 Closed Fences
    USACO 6.4 Electric Fences
    USACO 6.5 All Latin Squares
    USACO 6.4 The Primes
    USACO 6.4 Wisconsin Squares
  • 原文地址:https://www.cnblogs.com/zzxap/p/2175712.html
Copyright © 2011-2022 走看看