karma( 업 )/QT&QML Tip
QString to char* || char* to QString
생짜
2018. 1. 10. 19:47
QT 뿐만 아니라 다른 플랫폼에서도 string 관련 클래스와 char 자료형 변환은 매번 하면서도 매번 잊어 먹는다. 잊어 먹을 때마다 매번 검색하기 귀찮아 정리한다.
1. QString to char 배열
QString k = "CRAZYYYQT"; char ab[16]; sprintf(ab,"%s",(const char *)((QByteArray)(k.toLatin1()).data()) ); sprintf(ab,"%s",(const char *)((QByteArray)(k.toStdString()).data())); sprintf(ab,"%s",(const char *)k.toStdString().c_str() ); |
또는 strcpy 함수를 사용하여
strcpy( ab, k.toStdString().c_str()); |
toLatin1() 함수의 리턴 type이 QByteArray 객체이다.
2. QString to char 포인터
char 포인터를 사용할 때 주의할 점은 const type 으로 지정해줘야 한다.
QString k = "CRAZYYYQT"; const char* p = k.toStdString().c_str(); |
3. char 포인터 to QString
char* cha = "ABC"; QString str = QString(ch); QString str2 = QString("%1").arg(ch); QString str3 = QString::fromUtf8(ch); |