Question

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?

Was it helpful?

Solution

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.

OTHER TIPS

You can try this:-

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

Check this reference.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top