How to cast a QChar to int
Asked Answered
A

1

9

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?

Albric answered 21/8, 2013 at 17:56 Comment(0)
A
15

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.

Albric answered 5/12, 2013 at 16:7 Comment(1)
Yeah, but this does not yield the int required for QKeyEvent and QApplication::sendEvent. I think this may be what is needed: Convert string representation of keycode to Qt::Key (or any int) and back.Clari

© 2022 - 2024 — McMap. All rights reserved.