Постійний збір на дрони FPV для ЗСУ
Закидуй дві гривні!
FPV-дрони змінюють хід війни
Змінюй хід війни!

Вопрос по настройке С+

🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
Статус: Offline
Реєстрація: 02.09.2010
Повідом.: 31
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #1
Вопрос по настройке С++

Всем здравствуйте! Только начала изучать язык программирования С++. Когда программа скомпилировалась вместо русских букв типа "Введите значение х _" и т.п. вывудятся казибуки. В гугле была, вводить английскими буквами не устраивает.
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #2
Здравствуйте. специально для вас побывал в гугле :

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

char* _(const char* str)
{
char* buffer = new char[strlen(str)];
CharToOemA(str, buffer);
return buffer;
}

int main (int argc, char* argv[])
{
cout << _("Можно писать по-русски") << endl;
return 0;
}
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #3
Здравствуйте. специально для вас побывал в гугле :

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

char* _(const char* str)
{
char* buffer = new char[strlen(str)];
CharToOemA(str, buffer);
return buffer;
}

int main (int argc, char* argv[])
{
cout << _("Можно писать по-русски") << endl;
return 0;
}

охуеть решение, а кто выделенную память освобождать будет? :confused:
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #4
Доброго ранку, Владэ .
Можете пояснити,шо вы намудрили в крухлих словах ?
Цэ э принципиальнэ ришення,але нам потрибно системнэ.З таким макаром можно преобразовувати латину в кирилицу.
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #5
Вот более системное решение :D

#include<iostream>
#include<clocale>

using namespace std;

int main()
{
setlocale(LC_CTYPE, "");
cout << "Русский текст?! Да ладно!" << endl;
cin.get();
return 0;
}
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #6
В программировании значима каждая частина ,але як значима,за нею стоять цили компликси,крим обычних операторив,яки транформируються в команды.
Вам треба знайти заголовочный файл ,подивиться реализацию сетлокале ,потим знайти в основному потоку ввода-вывода обьект соут и пояснити,яким чином вин звязан с величиною ЛС_СТУРЕ.Може цэ просто змина одинарного апострофа на двийный ?
Як шо тоби просто потрибна дивчина ,то выбачь,мы не будемо торбувати.
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #7
:D почему же, очень интересно
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #8
Всем спасибо за ответы. Суть вопроса в том, что при написании консольного приложения и его запуске Run выдается такое черное окошечко в котором написано должено быть Введите ...Типа Hello world! только на русском. Коды написанные вверху должны решить вопрос?

#include<iostream>
#include<clocale>

using namespace std;

int main()
{
setlocale(LC_CTYPE, "");
cout << "Русский текст?! Да ладно!" << endl;
cin.get();
return 0;
}

Выдает те же казибуки.
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #9
setlocale(0, "russian"); - так попробуй
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #10
Нет не помогает. Буду английскими писать ((.
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #11
Ув. господа специалисты. Просим помочь :)
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #12
Задачи подобного типа постоянно встречаются в инете в качестве неразрешимых.
Тем не менее задача очень интересна ,тем что рассматривая ее можно проследить целый процесс от консоли до пользователя.Таблицы кодировки как латины так и кирилицы сидят постоянно в памяти.Вопрос в том,чтобы при инсталяции компилятора он уловил и кирилицу, иначе необходимо преобразовывать при вводе.При выводе процесс идет через строку ,проблем нет.
Таким образом приходим к мнению,что изменив приоритеты таблиц ,мы вообще получим неработающий компилятор.Значит остается только преобразование вводимых символов .И тогда рождается идея сделать таблицу замещения и создать украинский вариант разрешения проблемы.Влад,займитесь серьезно этим делом.
Мы выстроим из Вас мост и пройдемся по нему к Дианочке .
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #13
тут, похоже, еще и глюки с консолью. от уж и проблемы в сях :D
поставь 1251 кодировку
SetConsoleOutputCP(1251);

если не поможет - поменяй шрифт в самой консоли.
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #14
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #15
а под что пишете? Под виндовс или лины?
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #16
А шрифт редактора змінити на Terminal не влаштовує?
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #17
Вопрос разрешился в смене шрифта,похоже он решает проблему.
Если при вводе символа в консоли отображается непонятная каракуля,это значит,что в реалии 1251 работает и идет правильный набор-байт ,но отображение байта символа не соответствует правильно выбранному шрифту.
Все таки есть трезвые головы на Украине.От меня спасибо Сиру.
До этого никак не набирался русский шрифт в телефонном справочнике консольного типа.
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #18
какой компилятор и ОС используются?



Всем спасибо за ответы. Суть вопроса в том, что при написании консольного приложения и его запуске Run выдается такое черное окошечко в котором написано должено быть Введите ...Типа Hello world! только на русском. Коды написанные вверху должны решить вопрос?

судя по RUN вы используете C++ Builder
setlocale(LC_ALL,"russian") в нем работать не будет
используйте Visual Studio C++ :)
 
Останнє редагування:
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #19
OC Windows XP. Компилятор С++Builder. Нужен именно С++Builder 6 т.к. в нем лабы надо сдавать ).
 
  • 🟡 09:22 Відбій тривоги в Харківська область.Зверніть увагу, тривога ще триває у:- Куп’янський район- Харківський район- Липецька територіальна громада- Вовчанська територіальна громада#Харківська_область
  • #20
Поспешил что ли,думал Сир и будет тем мостом,по которому мы тяжелой баттареей пронесем кучу знаний дивчатам Украины ,оказалось ,наткнулись на бугор.Посмотрим,как Энди справится.
 
Назад
Зверху Знизу