zoukankan      html  css  js  c++  java
  • QString unsigned char* 的转换

    QString -> unsigned char* :
    QString str = "ABCD";
     int length = str.length();
    unsigned char* sequence = NULL;
    sequence =(unsigned char*)qstrdup(str.toAscii().constData());
    delete[] sequence;
    - sequence length = 5 --> ['A'] ['B'] ['C'] ['D'] ['/0']
    - sequence is now "independant" from str
    - sequence has to be deleted with -> delete [] sequence
    QString -> char:
    const QByteArray ba = string.toAscii(); // make ba const, because modifying this array might otherwise invalidate the pointer
    const char* sequence = ba.constData(); // now sequence will remain valid within the current scope.

    The call to toAscii() creates a temporary QByteArray which goes out of scope when used like this:
    char *sequence = string.toAscii().constData();
    // sequence is now a dangling pointer!

    http://wxpjiujiang.blog.163.com/blog/static/203994030201292661134137/

  • 相关阅读:

    (luogu)[模板]最长公共子序列
    表达式的值
    邮票面值设计
    尼克的任务
    HISTOGRA
    消防局的设立
    青蛙的约会
    产生数
    奇怪的电梯
  • 原文地址:https://www.cnblogs.com/findumars/p/6124347.html
Copyright © 2011-2022 走看看