Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > Руссификация С++


Автор: RomeO 11.10.2005, 22:19
Как можно сделать, чтобы в С++ можно было писать на русском языке?? Есть, может быть, какой-нить код или что-то типа того?? smile

Автор: Mayk 11.10.2005, 22:31
RomeO
Что конкретно не так с языком? Причин ведь может быть множество.

Во-первых в С++ нельзя присваивать идентификаторам имена русскими буквами(и славно).
Код

int цена; // <-- недопустимо


Во-вторых В С++ тем не менее можно использовать русские(как и почти любые другие символы) в комментариях
Код

int price; // <-- допустимо

и строках.
Код

string str = "русская строка в некой кодировке"; // <-- допустимо

Если вместо русских букв выводятся крякозябры то советую проверить шрифты(если крякозябры вместо комментов)
и соответствие кодировок(если при printf("строка"); выводит непонятно что)

В-третьих мне неизвестны компиляторы, которые выводили бы сообщения об ошибках на русском языке.

Что конкретно интересует?

Автор: Гениальный123Робот 14.1.2006, 22:27
Да просто, чтобы можно было писать в коде самой программы на русском языке! ( скажем, комментарии или при выводе (printf("русский текст");)).
smile

Автор: DeadSoul 14.1.2006, 22:34
Гениальный123Робот, ОС и компилятор укажи?

Автор: Geoges 14.1.2006, 22:58
Код



#include "stdafx.h"
#include <iostream>
#include <windows.h>
using namespace std;

void rus(char* text)
{
char t[30];
CharToOem(text,t);
cout<<t;
}

int main()
{
rus("Привет!");

return 0;
}

Автор: JackYF 4.2.2006, 02:30
У меня доп. вопрос: без <windows.h> никак? Ведь CharToOem как раз из нее?

Автор: Mayk 4.2.2006, 05:44
Цитата(JackYF @ 4.2.2006, 06:30 Найти цитируемый пост)

У меня доп. вопрос: без <windows.h> никак? Ведь CharToOem как раз из нее?

Ну вручную

Автор: byNet 6.2.2006, 12:09
а подругому никак?

Автор: Helicopterr 7.2.2006, 00:14
Цитата(RomeO @ 11.10.2005, 22:19)
Есть, может быть, какой-нить код или что-то типа того?? smile

иногда так помогает:
Код

 #pragma code_page (1251) // кирилица то есть
 

Цитата(JackYF @ 4.2.2006, 06:30 Найти цитируемый пост)

У меня доп. вопрос: без <windows.h> никак? Ведь CharToOem как раз из нее?

А чем может <windows.h> мешать?


Автор: Exekutor 7.2.2006, 07:56
Цитата

У меня доп. вопрос: без <windows.h> никак? Ведь CharToOem как раз из нее?


Напиши свою функцию преобразования кодировки. Например в ASCII символы упорядочены по алфавиту что для доски, что для винды. Просто отнимай от скан-кода символа винды, такое число, чтобы в результате появился символ доски.

Автор: Tulsky 7.2.2006, 10:10
Цитата

а подругому никак?

А про такую вещь как rdvga не слыхал?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)