문제

In C++ there is a way to cast a char to int and get the ascii value in return. Is there such a way to do the same with a qchar? Since unicode supports so many characters and some of them are actually looking alike, it is sometimes hard to tell what one is dealing with. An explicit code point or a number that can be used to get such would be very helpful.

I searched a the web and this site for a solution but so far no luck, Qt documentation isn't much of help either, unless I'm overlooking something.

Thank you in advance!

EDIT:

Maybe I wasn't clear enough on the matter, sorry.

Here's some code:

char chChar = 'a';
cout << (int)chChar; // will output 97, not 'a'

Also, Qt allows this:

QChar ch = 'a';
if(ch == 0x61)
//...

As far as I can tell, there has to be some information relating to the unicode codepoint in the ch object. Any possibility to get it out of there?

도움이 되었습니까?

해결책

Took some time but I found the answer: QChar has a member named QChar::unicode which returns a ushort with its code point. Just for the record.

다른 팁

You can try this:-

ch.toUpper() == QLatin1Char('S') ? 0LL : \

Check this reference.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top