以下の方法で 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();
}
おそらく、他の問題も抱えているのでしょう。具体的には、どのように機能しないのでしょうか?