Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Срочный вопрос в С++

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Компилируемые языки] >> Срочный вопрос в С++
Имя
Сообщение << Старые топики   Новые топики >>
Срочный вопрос в С++ - 2007-10-20 01:12:10.160000   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
Как в С++ зделать так чтобы руские буквы отображались рускими? Вот простой пример:
#include <iostream>
using namespace std;
int main()
{
cout << "Привет, как дела?" << endl;
system("PAUSE");
return 0;
}
 
Должно отображатся Привет, как дела? а у меня появляются какието каракули, как ето исправить?
Post #: 1
RE: Срочный вопрос в С++ - 2007-10-20 01:35:39.436666   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
И, по сложнее, как зделать чтобы весь текст отображался на фоне фотографии?
Post #: 2
RE: Срочный вопрос в С++ - 2007-10-20 01:55:45.786666   
GorluM

Сообщений: 312
Оценки: 0
Присоединился: 2004-04-07 23:41:00
ответ один.
не использовать консоль.
 
русские можно сделать в консоли, но потребуется вручную WriteFile'ом их печатать
Post #: 3
RE: Срочный вопрос в С++ - 2007-10-20 11:39:46.213333   
JD_WERT

Сообщений: 117
Оценки: 0
Присоединился: 2007-07-12 06:59:16.613333
#include <iostream>
using namespace std;

void print(char* text)
{
char* rez = new char[strlen(text) + 1];
CharToOemA(text, rez);
cout << rez;
delete rez;
}

void main()
{
print("Привет, мир!\n");
system("PAUSE");
}
Post #: 4
RE: Срочный вопрос в С++ - 2007-10-20 11:41:03.310000   
BW07

Сообщений: 43
Оценки: 0
Присоединился: 2007-09-22 18:29:37.170000
Вот тебе пример

#include "windows.h" #include "iostream.h" void main() { char src[100]; char dest[100]; strcpy(src,"Привет"); CharToOem(src,dest); cout &lt;&lt; src &lt;&lt; endl; cout &lt;&lt; dest &lt;&lt; endl; } перекодировка строк
Post #: 5
RE: Срочный вопрос в С++ - 2007-10-20 12:04:39.150000   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
А как на фоне фотографии печатать?
Post #: 6
RE: Срочный вопрос в С++ - 2007-10-20 12:48:10.683333   
JD_WERT

Сообщений: 117
Оценки: 0
Присоединился: 2007-07-12 06:59:16.613333
На паскале в стандартной консоли - никак.
Только Delphi в графическом приложении с окнами
Post #: 7
RE: Срочный вопрос в С++ - 2007-10-20 13:47:16.220000   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
надо просто кодировку сорцов держать такой-же как и кодировка консоли. можно чуть более сложно – использовать что-нибудь в стиле gettext для автоматической перекодировки. а фотография в беграунд консоли… поищи какой-нибудь эмулятор терминала, который позволяет проставлять png в качестве бекграунда.
Post #: 8
RE: Срочный вопрос в С++ - 2007-10-20 14:05:09.616666   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
quote:

На паскале в стандартной консоли - никак.
Только Delphi в графическом приложении с окнами

А я про С++ спросил!
 
quote:

надо просто кодировку сорцов держать такой-же как и кодировка консоли. можно чуть более сложно – использовать что-нибудь в стиле gettext для автоматической перекодировки. а фотография в беграунд консоли… поищи какой-нибудь эмулятор терминала, который позволяет проставлять png в качестве бекграунда.

А по подробнее можно?  
Post #: 9
RE: Срочный вопрос в С++ - 2007-10-20 14:12:57.033333   
JD_WERT

Сообщений: 117
Оценки: 0
Присоединился: 2007-07-12 06:59:16.613333
quote:

А я про С++ спросил!

Ну в С++ точно также: создай окно, отрисуй картинку, сделай поверх нее свой терминал.
Post #: 10
RE: Срочный вопрос в С++ - 2007-10-20 14:16:27.553333   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
quote:

создай окно, отрисуй картинку, сделай поверх нее свой терминал

Ниче не понел из того что ты сказал!
Post #: 11
RE: Срочный вопрос в С++ - 2007-10-20 14:18:57.603333   
JD_WERT

Сообщений: 117
Оценки: 0
Присоединился: 2007-07-12 06:59:16.613333
Все зависит от того используешь ли ты MFC, или только WinAPI
Post #: 12
RE: Срочный вопрос в С++ - 2007-10-20 14:22:08.840000   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
А ты попробуй дать мне конкретный компелируемый код
Post #: 13
RE: Срочный вопрос в С++ - 2007-10-20 14:22:54.793333   
rgo

Сообщений: 7170
Оценки: 281
Присоединился: 2004-09-25 05:14:25
quote:

ORIGINAL: SkyLinE215
quote:

надо просто кодировку сорцов держать такой-же как и кодировка консоли. можно чуть более сложно – использовать что-нибудь в стиле gettext для автоматической перекодировки. а фотография в беграунд консоли… поищи какой-нибудь эмулятор терминала, который позволяет проставлять png в качестве бекграунда.

А по подробнее можно?

куда уж подробнее? кодировка сорца какая? небось cp1251. а консоль считает что вывод программы – это cp866. компилятору вообще насрать – он что нашёл в сорце, то и в бинарник засунул. если сорец, прежде чем компилировать перекодировать, а ещё лучше текстовому редактору объяснить что кодировка сорца должна быть cp866, то проблем не будет.
но это неправильно – если ты захочешь скомпилять под *nix, то там заранее не угадаешь: кодировка консоли может быть koi8-r, может быть cp1251, а может utf-8. более того, она вообще может не поддерживать русские букофки. поэтому придумали gettext, и программы его поддерживающие умудряются в любой ситуации выглядеть пристойно. ну за исключением ситуаций, когда система была обработана кривыми руками.
а про бекграунд… стандартный вендовый эмулятор досового терминала – это убожество, которое кроме чёрного фона ничего не умеет. но если взять, скажем gnome-terminal, то он может и может. не факт, конечно, но вероятность есть.
Post #: 14
RE: Срочный вопрос в С++ - 2007-10-20 14:26:24.470000   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
Повторяю то что сказал раньше:А ты попробуй дать мне конкретный компелируемый код
Post #: 15
RE: Срочный вопрос в С++ - 2007-10-20 14:30:39.896666   
JD_WERT

Сообщений: 117
Оценки: 0
Присоединился: 2007-07-12 06:59:16.613333
Если ты не знаешь, что такое WinAPI, то такими вещами заниматься рано.
Зайди на http://rsdn.ru - много интересного найдешь
Post #: 16
RE: Срочный вопрос в С++ - 2007-10-20 14:38:30.970000   
JD_WERT

Сообщений: 117
Оценки: 0
Присоединился: 2007-07-12 06:59:16.613333
Ссылка по теме, найдена в яндексе на втором месте:
http://programmistu.h12.ru/mfc/steps/mfc1.html
Тебе поможет большего всего
Post #: 17
RE: Срочный вопрос в С++ - 2007-10-20 17:11:43.850000   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
По моиму ты не понел заговолок топика, там написано СРОЧНО!
А у меня сейчас нет времени учить WinAPI !
И поетому я задал здесь вопрос, чтобы мне дали конкретный код!
Post #: 18
RE: Срочный вопрос в С++ - 2007-10-20 17:43:50.276666   
JD_WERT

Сообщений: 117
Оценки: 0
Присоединился: 2007-07-12 06:59:16.613333
С использованием чистого WinAPI там будет минимум 200 строк кода. Вряд-ли кто-то захочет его сейчас и сразу написать.
А разобраться с MFC, особенно по той ссылке, которую я дал - дело пары часов, не больше(ну если не совсем MFC, то точно с той частью, которая тебе нужна)
Post #: 19
RE: Срочный вопрос в С++ - 2007-10-20 17:56:19.710000   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
Могу дать мыло, там код пришлеш.
Post #: 20
RE: Срочный вопрос в С++ - 2007-10-20 18:03:50.766666   
JD_WERT

Сообщений: 117
Оценки: 0
Присоединился: 2007-07-12 06:59:16.613333
Да?!:) А кто тебе сказал, что я возьму и за 15 минут напишу такую прогу. Заметь, прогу, а не простой пример из консоли.
Хотя, если через недельку будет свободное время, то могу и написать, для разнообразия:D
Post #: 21
RE: Срочный вопрос в С++ - 2007-10-20 22:49:53.513333   
Absurd

Сообщений: 335
Оценки: 0
Присоединился: 2007-08-24 13:14:11.566666
Надо первой строчкой в main сделать std::setlocale(LC_ALL,"rus_rus.866")
Post #: 22
RE: Срочный вопрос в С++ - 2007-10-21 12:50:47.096666   
SkyLinE215

Сообщений: -986
Оценки: 0
Присоединился: 2007-08-27 10:25:44.570000
quote:

Надо первой строчкой в main сделать std::setlocale(LC_ALL,"rus_rus.866")

По конкретней можно?
Ето типа так?
quote:

#include &lt;iostream&gt;
using namespace std;
int main std::setlocale(LC_ALL,"rus_rus.866")
{
cout &lt;&lt; "Привет, как дела?" &lt;&lt; endl;
system("PAUSE");
return 0;
}

Если да, то к меня не компелируеца
Post #: 23
RE: Срочный вопрос в С++ - 2007-10-21 13:21:46.586666   
Absurd

Сообщений: 335
Оценки: 0
Присоединился: 2007-08-24 13:14:11.566666
quote:

ORIGINAL: SkyLinE215

quote:

Надо первой строчкой в main сделать std::setlocale(LC_ALL,"rus_rus.866")

По конкретней можно?
Ето типа так?
quote:

#include &lt;iostream&gt;
using namespace std;
int main std::setlocale(LC_ALL,"rus_rus.866")
{
cout &lt;&lt; "Привет, как дела?" &lt;&lt; endl;
system("PAUSE");
return 0;
}

Если да, то к меня не компелируеца


#include &lt;iostream&gt; #include &lt;clocale&gt; using namespace std; int main { setlocale(LC_ALL,"rus_rus.866"); cout &lt;&lt; "Привет, как дела?" &lt;&lt; endl; system("PAUSE"); return 0; }
Post #: 24
RE: Срочный вопрос в С++ - 2007-10-27 18:57:47.856666   
_usVer_

Сообщений: 24
Оценки: 0
Присоединился: 2007-08-28 16:04:05.410000
quote:


Карочи есть две формы&nbsp; в Form2 выбираешь рисунок для Form1&nbsp; для компонента Image… Рисунок выбирается без ошибок и ставится в Image но его не видно на Image пока не происходит обновление или перерисовка изображения… перепробовал разные команды и обновить и &nbsp;перерисовать, не чего не помогает,… может кто что не будь подскажет…???
&nbsp;
Кстати как можно реализовать чтобы при зажатой кнопки на Форме, форма двигалась в след за курсором???

 
Это же консольная прога, когда открывается нажимаеш правой кнопкой на пенели упровления окна, выбираеш из выподающего меню -> свойства -> вкладку шрифт, там будит написана Шрифт и выбириш тип шрифта "Lucida Console"
 
И чтобы отоброжались русские буквы вот код Руссификации Консоля:
SetConsoleOutputCP(1251); //русификация консоли
 
Post #: 25
RE: Срочный вопрос в С++ - 2007-10-27 18:59:37.750000   
_usVer_

Сообщений: 24
Оценки: 0
Присоединился: 2007-08-28 16:04:05.410000
quote:

Как в С++ зделать так чтобы руские буквы отображались рускими? Вот простой пример:
#include &lt;iostream&gt;
using namespace std;
int main()
{
cout &lt;&lt; "Привет, как дела?" &lt;&lt; endl;
system("PAUSE");
return 0;
}

Должно отображатся Привет, как дела? а у меня появляются какието каракули, как ето исправить?

 
Это же консольная прога, когда открывается нажимаеш правой кнопкой на пенели упровления окна, выбираеш из выподающего меню -> свойства -> вкладку шрифт, там будит написана Шрифт и выбириш тип шрифта "Lucida Console"

И чтобы отоброжались русские буквы вот код Руссификации Консоля:
SetConsoleOutputCP(1251); //русификация консоли

Post #: 26
Страниц:  [1]
Все форумы >> [Компилируемые языки] >> Срочный вопрос в С++







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.