Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   Русские текст в консольных приложениях C++ (http://forum.oszone.net/showthread.php?t=30405)

Guest 09-07-2003 13:09 208488

Я начиная осваивать С++. Решил начать *c Microsoft Visual С++ 6.0. Создал консольное приложение которые выводи на экран что-то на русском языке (с помощью обыкновенного cout <<). При запуске из среды С++ вместо русских букв на экране абра-кадабра. Что нужно сделать? Работаю в Win2000 SP-3.

vasketsov 09-07-2003 18:30 208489

wsetlocale/setlocale по-моему тебе поможет. это из CRT, например, из msvcrt.dll

Guest 10-07-2003 00:04 208490

все очень просто: надо создать масив чаров, вписать что в него нужно, а потом с помощью функции CharToOem(ch1, ch2) переконвертировать, и в cout<< вывести ch1. Как точно эта функция работает я уже не помню смотри в МСДН

Vla2003 13-07-2003 12:35 208491

Работает в билдере 6:
Код:

//---------------------------------------------------------------------------

#include <iostream.h>
#include <windows>
#include <conio.h>
#include <string>
//---------------------------------------------------------------------------
string Rus(const char * text);
char Buf[2048];
int main()
{ cout<<Rus("Привет")<<endl;
cout<<Rus("Нажмите любую клавишу")<<endl;
getch();
        return 0;
}
//---------------------------------------------------------------------------
string Rus(const char * text)
{ CharToOem(text,Buf);
 return string(Buf);
}



Время: 23:34.

Время: 23:34.
© OSzone.net 2001-