Форум программистов, компьютерный форум CyberForum.ru

Кодировка в разных ОС - C++

Восстановить пароль Регистрация
 
koka3000
11 / 11 / 3
Регистрация: 02.02.2011
Сообщений: 211
08.03.2011, 22:37     Кодировка в разных ОС #1
ВОт кусок программы ( консольная игра):

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include<iostream>
#include<string>
#include"City.h"
#include"city/build.h"
int main(int argc, char *argv[])
{
    string n;
    setlocale(LC_ALL, "Russian");
    system("COLOR 2");
    system("Beta-test в консольном режиме.");
   
    cout << "Начать играть?" << endl;
    system("pause > null");
    
    City KokaLand("новый город");
    KokaLand.GO();
    system("PAUSE");
    return EXIT_SUCCESS;
}
Компилил ее на dev-c++ на висте. Перекинул ех'шник другу. У него видновс ХР.
И вместо норм русс букв у него КАРАКУЛИ? А вот у меня все ок было.. Подскажите как можно это исправить ? А то уж очень хочется перед друзьями попонтоваться )

Добавлено через 4 часа 40 минут
up что не кто не знает?

Добавлено через 3 часа 58 минут
up очень нужна помощь по этой теме!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.03.2011, 22:37     Кодировка в разных ОС
Посмотрите здесь:

Кодировка в C C++
C++ Кодировка, ASСII
C++ Кодировка файла
C++ Кодировка в консоли(C)
Кодировка C++
кодировка Хаффмана C++
C++ В матрице выбрать n элементов в разных строках и разных столбцах так, чтобы их сумма была минимальной
C++ Сбивается кодировка

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
09.03.2011, 02:29     Кодировка в разных ОС #2
koka3000, Ну например написать функцию для перевода...
Для такого использования в IDE должна стоять кодировка multibyte а не unicode
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <windows.h>
 
std::string toAscii(const std::string& one)
{
    std::string res;
    OemToChar(const_cast<char*>(one.c_str()), const_cast<char*>(res.c_str()));
    return std::string(res.c_str());
}
 
std::string toRus(const std::string& one)
{
    std::string res;
    CharToOem(const_cast<char*>(one.c_str()), const_cast<char*>(res.c_str()));
    return std::string(res.c_str());
}
 
int main()
{
    std::string str;
    std::cin>>str;
    str=toAscii(str);
    std::cout<<toRus(str)<<'\n';
    std::cout<<toRus("Привет")<<'\n';
    std::string now="Привет, малыш!";
    std::cout<<toRus(now)<<'\n';
}
Yandex
Объявления
09.03.2011, 02:29     Кодировка в разных ОС
Ответ Создать тему
Опции темы

Текущее время: 03:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru