LINUX.ORG.RU

История изменений

Исправление CYB3R, (текущая версия) :

Да, в уже упомянутом Vala всё точно также:

int main() {
    string str = "aФ⌘";

    stdout.printf("%s (%d bytes) contains %d characters:\n", str, str.length, str.char_count());

    unichar c;
    for (int i = 0; str.get_next_char(ref i, out c);) {
        stdout.printf ("%s size %d\n", c.to_string(), c.to_string().length);
    }

    return 0;
}
aФ⌘ (6 bytes) contains 3 characters:
a size 1
Ф size 2
⌘ size 3

Исходная версия CYB3R, :

Да, в уже упомянутом Vala всё точно также:

int main() {
    string unicode = "aФ⌘";

    stdout.printf("%s (%d bytes) contains %d characters:\n", unicode, unicode.length, unicode.char_count());

    unichar c;
    for (int i = 0; unicode.get_next_char(ref i, out c);) {
        stdout.printf ("%s size %d\n", c.to_string(), c.to_string().length);
    }

    return 0;
}
aФ⌘ (6 bytes) contains 3 characters:
a size 1
Ф size 2
⌘ size 3