Как все буквы русского алфавита сделать заглавными в с++ builder 6? В качестве параметра поступает строка char*

как все буквы русского алфавита сделать заглавными в с++ builder 6? В качестве параметра поступает строка char*.

  • Лучше использовать AnsiUpperCase. Мало ли куда программу занесет....=)
    Функция учитывает региональные настройки

    http://docwiki.embarcadero.com/Libraries/XE2/en/System.SysUtils.AnsiUpperCase

    Думаю из char* AnsiString не проблема получить, благо и конструктор и оператор = есть.

    Ну или Win API
    CharUpperBuf

    http://msdn.microsoft.com/en-us/library/ms647475(v=vs.85).aspx

    LCMapString/LCMapStringEx (рекомендация Microsoft)

    http://msdn.microsoft.com/en-us/library/dd318700(v=vs.85).aspx

  • Я точно сказать не могу, посоветую идейку.
    Попробуй сдвинуть значение символа на 32 влево, по таблице ASCII или BASE64 ты как раз попадёшь на аналогичную букву в верхнем регистре.
    Чтобы это сделать ...ух, головушка не помнить (
  • char *str;
    ...
    for(int i = 0; i < strlen(str); i++)
    if (str[ i ] > 223) str[ i ] -= 32;