Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.12.2010, 19:53   #1
assasinukraine
Новичок
Джуниор
 
Регистрация: 25.12.2010
Сообщений: 2
По умолчанию изменить криллицу на латиницу

Добрий вечер.
Подскажите как можно изменить слова в строке с крилицы на латиницу. Может существует какая-то функция или есть иной способ. Буду очень признателен за помощь.
assasinukraine вне форума Ответить с цитированием
Старый 25.12.2010, 20:03   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Что-то мне подсказывает что тебе нужно это:
http://www.programmersforum.ru/showthread.php?t=86929
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 25.12.2010, 20:58   #3
assasinukraine
Новичок
Джуниор
 
Регистрация: 25.12.2010
Сообщений: 2
По умолчанию

Мне нужна функция которая изменяет все слова записаные кирилицей на аналогичные латиницей ( например обработка - obrabotka ) . Если кому-нибуть она извесна подскажите, очень надо.
assasinukraine вне форума Ответить с цитированием
Старый 25.12.2010, 23:51   #4
dosha
Форумчанин
 
Регистрация: 30.08.2010
Сообщений: 224
По умолчанию

Код:
#include <iostream>
 
using namespace std;
 
 
void Transliterate(char* str, char* newStr)
{
        for (; *str != 0; str++)
        {
                switch (str[0])
                {
                        case 'а': strcat(&newStr[0], "a"); break;
                        case 'б': strcat(&newStr[0], "b"); break;
                        case 'в': strcat(&newStr[0], "v"); break;
                        case 'г': strcat(&newStr[0], "g"); break;
                        case 'д': strcat(&newStr[0], "d"); break;
                case 'е': strcat(&newStr[0], "e"); break;
                case 'ё': strcat(&newStr[0], "ye"); break;
                case 'ж': strcat(&newStr[0], "zh"); break;
                case 'з': strcat(&newStr[0], "z"); break;
                case 'и': strcat(&newStr[0], "i"); break;
                case 'й': strcat(&newStr[0], "y"); break;
                case 'к': strcat(&newStr[0], "k"); break;
                case 'л': strcat(&newStr[0], "l"); break;
                case 'м': strcat(&newStr[0], "m"); break;
                case 'н': strcat(&newStr[0], "n"); break;
                case 'о': strcat(&newStr[0], "o"); break;
                case 'п': strcat(&newStr[0], "p"); break;
                case 'р': strcat(&newStr[0], "r"); break;
                case 'с': strcat(&newStr[0], "s"); break;
                case 'т': strcat(&newStr[0], "t"); break;
                case 'у': strcat(&newStr[0], "u"); break;
                case 'ф': strcat(&newStr[0], "f"); break;
                case 'х': strcat(&newStr[0], "ch"); break;
                case 'ц': strcat(&newStr[0], "z"); break;
                case 'ч': strcat(&newStr[0], "ch"); break;
                case 'ш': strcat(&newStr[0], "sh"); break;
                case 'щ': strcat(&newStr[0], "ch"); break;
                case 'ъ': strcat(&newStr[0], "''"); break;
                case 'ы': strcat(&newStr[0], "y"); break;
                case 'ь': strcat(&newStr[0], "''"); break;
                case 'э': strcat(&newStr[0], "e"); break;
                case 'ю': strcat(&newStr[0], "yu"); break;
                case 'я': strcat(&newStr[0], "ya"); break;
                case 'А': strcat(&newStr[0], "A"); break;
                case 'Б': strcat(&newStr[0], "B"); break;
                case 'В': strcat(&newStr[0], "V"); break;
                case 'Г': strcat(&newStr[0], "G"); break;
                case 'Д': strcat(&newStr[0], "D"); break;
                case 'Е': strcat(&newStr[0], "E"); break;
                case 'Ё': strcat(&newStr[0], "Ye"); break;
                case 'Ж': strcat(&newStr[0], "Zh"); break;
                case 'З': strcat(&newStr[0], "Z"); break;
                case 'И': strcat(&newStr[0], "I"); break;
                case 'Й': strcat(&newStr[0], "Y"); break;
                case 'К': strcat(&newStr[0], "K"); break;
                case 'Л': strcat(&newStr[0], "L"); break;
                case 'М': strcat(&newStr[0], "M"); break;
                case 'Н': strcat(&newStr[0], "N"); break;
                case 'О': strcat(&newStr[0], "O"); break;
                case 'П': strcat(&newStr[0], "P"); break;
                case 'Р': strcat(&newStr[0], "R"); break;
                case 'С': strcat(&newStr[0], "S"); break;
                case 'Т': strcat(&newStr[0], "T"); break;
                case 'У': strcat(&newStr[0], "U"); break;
                case 'Ф': strcat(&newStr[0], "F"); break;
                case 'Х': strcat(&newStr[0], "Ch"); break;
                case 'Ц': strcat(&newStr[0], "Z"); break;
                case 'Ч': strcat(&newStr[0], "Ch"); break;
                case 'Ш': strcat(&newStr[0], "Sh"); break;
                case 'Щ': strcat(&newStr[0], "Ch"); break;
                case 'Ъ': strcat(&newStr[0], "''"); break;
                case 'Ы': strcat(&newStr[0], "Y"); break;
                case 'Ь': strcat(&newStr[0], "''"); break;
                case 'Э': strcat(&newStr[0], "E"); break;
                case 'Ю': strcat(&newStr[0], "Yu"); break;
                case 'Я': strcat(&newStr[0], "Ya"); break;
                        default: { char Temp[2] = { str[0], 0} ; strcat(&newStr[0], &Temp[0]); }
                }
        }
}

int main()
{
        char* x = "Привет мир!";
        char y[100] = {0};
        Transliterate(x, &y[0]);
        cout << y;
        return 0;
}
-две минуты гугла
dosha вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Изменить ЗЛОбнаЯ Помощь студентам 3 02.12.2010 21:17
Реестр - Необходимо изменить действие по умолчанию для .reg файлов(«Изменить» вместо «Объединить»). ACE Valery Windows 7 30.11.2010 23:33
Изменить макроса FormAlDeGid Microsoft Office Excel 2 30.01.2010 14:23
Изменить размеры Манжосов Денис :) Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 16.05.2008 20:14
Как преобразовать русские буквы в латиницу? Alexander_Gr Microsoft Office Excel 8 03.12.2007 19:49