QString から char* への変換 質問する

QString から char* への変換 質問する

以下の方法で QString を char* 型に変換しようとしましたが、うまくいかないようです。

//QLineEdit *line=new QLineEdit();{just to describe what is line here}

QString temp=line->text();
char *str=(char *)malloc(10);
QByteArray ba=temp.toLatin1();
strcpy(str,ba.data());

この方法の潜在的な欠陥について詳しく説明していただけますか、または別の方法を提示していただけますか?

ベストアンサー1

さて、Qt よくある質問言う:

int main(int argc, char **argv)
{
 QApplication app(argc, argv);
  QString str1 = "Test";
  QByteArray ba = str1.toLocal8Bit();
  const char *c_str2 = ba.data();
  printf("str2: %s", c_str2);
  return app.exec();
}

おそらく、他の問題も抱えているのでしょう。具体的には、どのように機能しないのでしょうか?

おすすめ記事