Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.88/25: Рейтинг темы: голосов - 25, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 19.12.2024
Сообщений: 1

Проблема с кириллицей

19.12.2024, 21:15. Показов 7254. Ответов 63
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Люди добрые, прошу совета. Написал программу, при выводе результата русские символы в строке программа игнорирует, притом с английскими все выводится нормально. Кодировку 10 раз перепроверил и вроде бы все должно работать. Компилировал через VSCode, компилятор G++.

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
#include <limits>
using namespace std;
 
void error(){
    cout << endl;
    cout << "0xSoso0000026 Попробуйте снова" << endl;
    cout << endl;
    cin.clear();
    cin.ignore(numeric_limits<streamsize>::max(), '\n');
}
 
int main(){
 
    int cycle = 1;
    int x, y;
    
    while(true){
 
        cout << "Цикл №" << cycle << "." << endl;
        cout << "Введите количество строк: ";
        if(cin >> x && x > 1){
 
            string conctn[x];
 
            cin.ignore(numeric_limits<streamsize>::max(), '\n');
 
            cout << "Введите " << x;
            if(x < 5){
            cout << " строки:" << endl;
            } else {
            cout << " строк:" << endl; 
            }
            cout << endl;
 
    string result = "";
        for(y = 0; y < x; ++y){ 
            while(true){
                if(getline(cin, conctn[y])){
                    result += conctn[y] + " ";
                    break;
                } else {
                    error();
                }
                }
        }
        
        cout << endl;
        cout << "Результат: " << result << endl;
        cout << "Длина строк: " << result.size() - 1 << endl;
        cout << endl;
 
        } else {
            error();
        }
 
    ++cycle;
}
return 0;
    }
Миниатюры
Проблема с кириллицей  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
19.12.2024, 21:15
Ответы с готовыми решениями:

Проблема с шифром Цезаря(не работает с кириллицей )
Всем привет. У меня есть рабочий код шифра Цезаря. Когда я использую в коде char, все отлично работает, но кириллицу не обрабатывает,...

Проблема с кириллицей
Здравствуйте. Изучаю python по книге Марка Лутца. Скопировал один пример, он был с документацией. Вызвав help для данного модуля русская...

Проблема с кириллицей
При вводе английских букв, все норм, происходит архивирование строки. Но при вводе кириллицы, он выводит это Exception in thread...

63
 Аватар для eva2326
1685 / 513 / 107
Регистрация: 17.05.2015
Сообщений: 1,524
21.12.2024, 14:44
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Royal_X Посмотреть сообщение
это реальность, нравится тебе или нет
кириллица это творение греков, которое стало общественным достояние человечества и не имеет никакой связи с отдельной страной, в том числе, с РФ
Вы бредите.
До ваших мозгов, видимо, не доходит, что из того факта, что кириллица имеет греческие корни, никак не следует этот ваш бред:
Цитата Сообщение от Royal_X Посмотреть сообщение
не имеет никакой связи с отдельной страной, в том числе, с РФ
Более того, вот здесь вы сами себе противоречите:
Цитата Сообщение от Royal_X Посмотреть сообщение
стало общественным достояние человечества и не имеет никакой связи с отдельной страной
У русофобов часто так бывает - проблема с логикой.

Повторяю для тех, кто в танке:
Русский язык и кириллица связаны тесным преемством. Русский литературный язык нового времени — прямой наследник и продолжатель церковнославянского, и для него используется единый алфавит — кириллица
0
21.12.2024, 14:50

Не по теме:

Цитата Сообщение от eva2326 Посмотреть сообщение
У русофобов часто так бывает - проблема с логикой.
Вы слишком возбудились, не вижу смысла продолжать с вами обсуждение. Если вы считаете, что я русофоб и что в моих постах вы видите публичные призывы отказаться от кириллицы и вы это считаете русофобией, то советую обратиться в ФСБ или в Следственный комитет или куда вы там, как правило, обращаетесь, чтобы меня срочно нашли по ip и наказали. Как раз, мне всегда было интересно, насколько VPN + Tor вместе эффективны :D
Если вы успокоитесь и прекратите использовать эмоциональные оскорбления, то я напишу вам почему там нет связи, но не в этой теме, а в разделе "Обо всем"

0
 Аватар для eva2326
1685 / 513 / 107
Регистрация: 17.05.2015
Сообщений: 1,524
21.12.2024, 14:51
Цитата Сообщение от Royal_X Посмотреть сообщение
Вы слишком возбудились
Балабол
0
Злостный нарушитель
 Аватар для Verevkin
10878 / 5817 / 1288
Регистрация: 12.03.2015
Сообщений: 26,855
21.12.2024, 14:52
Цитата Сообщение от volodin661 Посмотреть сообщение
кроме буквы Ж ничего стоящего внимания в кириллице нет.
Фонетически Ж тоже весьма хороша.
1
21.12.2024, 14:53

Не по теме:

Verevkin, я теперь начал понимать, почему ты своего кота называешь Жырным

Цитата Сообщение от Verevkin Посмотреть сообщение
Даже Жырный со мной согласен, вон кивает мне с подоконника.

0
 Аватар для volodin661
7094 / 2325 / 353
Регистрация: 10.12.2013
Сообщений: 8,022
21.12.2024, 15:12
Ы - позор. две буквы по цене одной.
Мягкий и твердый знаки тоже позор.

Добавлено через 8 минут
θ - идеально
Это Тета. Как произносится звук Т ? - Ты округляешь губы и чуть высовываешь язык между зубами.
именно это в букве и прорисовано.
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
21.12.2024, 16:15

Не по теме:

Цитата Сообщение от volodin661 Посмотреть сообщение
Ы - позор. две буквы по цене одной.
Дело ведь не в отображении а в соответствии со звуковым образцом. Кириллица идеальна для отображения звукового ряда производимого носителями русского языка - самого древнего языка, корнями восходящего к санскриту.
До Кирилла и Мефодия у славян уже была своя письменность, что подтверждает сам Кирилл, якобы создатель русской азбуки. Кое кто постоянно пытается очернить великую русскую историю. Они говорят, что типо до Кирилла у нас не было письменности. Но свидетельства говорят об обратном. Это греки переняли наш алфавит, а Кирилл просто перевел на существовавший тогда русский алфавит священные тексты. Да было бы и глупо считать обратное. Большинство ученых сходятся на том, что братья создали не кириллицу, а глаголицу, которая не прижилась.
Я вообще считаю, что наша история искажена. Это славяне были "греками эллинами" и Эллада была русское государство. Затем римская империя. Цезарь был славянином. Его прямой потомок от брата Цезаря славянин Рюрик основал северные княжества. Археологи как только что выкопают сперва зачищают все надписи, которые свидетельствуют о славянах. Я видел (на одном видео) надпись которую пропустили написанную Александром Македонским на камне разрушенного города на чистом русском языке с его подписью. Как же они пропустили?)) А до Эллады мы жили в Сирии, Египте. До Сирии - Персидская империя Ахеменидов - наша империя. Немецкий, английский языки имеют славянске корни. 10 пропавших колен израилевых - славянские племена ушедшие на восток, которые основали протоиндийскую цивилизацию, оставили свой след в Китае, Японии, и через сибирь пришедших на среднерусскую равнину и воссоиденились с уже обитавшими там славянскими племенами. Египетская цивилизация тоже славяне. Вот такие у меня взгляды. Арийцы мы.)))


Цитата Сообщение от Royal_X Посмотреть сообщение
Но вот допустим у меня стоит французский, ибо я пользуюсь французскими не-юникодными консольными программами. Я скачал русскую консольную не-юникодную прогу и у меня иероглифы.
Дык потому что она русская, потому и иероглифы. если бы разраб учел этот момент все было бы по другому. Опять же не консоль виновата.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6315 / 3037 / 1054
Регистрация: 01.06.2021
Сообщений: 11,570
21.12.2024, 16:22
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Опять же не консоль виновата.
виноват Вася или консоль - это второстепенно.
Программист должен думать о том, чтобы его код корректно работал на многих платформах. Когда известно, под какую платформу пишется, то так проще. Но если пишется код под консоль на чистом С++, то невозможно или чрезвычайно сложно реализовать кириллицу.
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
21.12.2024, 16:24
Надо было под спойлер спрятать.))

Добавлено через 1 минуту
Цитата Сообщение от Royal_X Посмотреть сообщение
Но если пишется код под консоль на чистом С++, то невозможно реализовать кириллицу.
Что, невозможно реализовать мультиязычное приложение под консоль на плюсах? Я не ослышался? Было бы желание.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6315 / 3037 / 1054
Регистрация: 01.06.2021
Сообщений: 11,570
21.12.2024, 16:25
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Дело ведь не в отображении а в соответствии со звуковым образцом. Кириллица идеальна для отображения звукового ряда производимого носителями русского языка - самого древнего языка, корнями восходящего к санскриту.
До Кирилла и Мефодия у славян уже была своя письменность, что подтверждает сам Кирилл, якобы создатель русской азбуки. Кое кто постоянно пытается очернить великую русскую историю. Они говорят, что типо до Кирилла у нас не было письменности. Но свидетельства говорят об обратном. Это греки переняли наш алфавит, а Кирилл просто перевел на существовавший тогда русский алфавит священные тексты. Да было бы и глупо считать обратное. Большинство ученых сходятся на том, что братья создали не кириллицу, а глаголицу, которая не прижилась.
Я вообще считаю, что наша история искажена. Это славяне были "греками эллинами" и Эллада была русское государство. Затем римская империя. Цезарь был славянином. Его прямой потомок от брата Цезаря славянин Рюрик основал северные княжества. Археологи как только что выкопают сперва зачищают все надписи, которые свидетельствуют о славянах. Я видел (на одном видео) надпись которую пропустили написанную Александром Македонским на камне разрушенного города на чистом русском языке с его подписью. Как же они пропустили?)) А до Эллады мы жили в Сирии, Египте. До Сирии - Персидская империя Ахеменидов - наша империя. Немецкий, английский языки имеют славянске корни. 10 пропавших колен израилевых - славянские племена ушедшие на восток, которые основали протоиндийскую цивилизацию, оставили свой след в Китае, Японии, и через сибирь пришедших на среднерусскую равнину и воссоиденились с уже обитавшими там славянскими племенами. Египетская цивилизация тоже славяне. Вот такие у меня взгляды. Арийцы мы.)))
тонко
0
 Аватар для volodin661
7094 / 2325 / 353
Регистрация: 10.12.2013
Сообщений: 8,022
21.12.2024, 16:26
Цитата Сообщение от CoderHuligan Посмотреть сообщение
носителями русского языка - самого древнего языка, корнями восходящего к санскриту
восходящие корни..

Инфузории туфельки раньше тоже переговаривались на русском. Пошевеливая восходящими корнями. Сам слышал.
1
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6315 / 3037 / 1054
Регистрация: 01.06.2021
Сообщений: 11,570
21.12.2024, 16:27
Цитата Сообщение от CoderHuligan Посмотреть сообщение
невозможно реализовать мультиязычное приложение под консоль на плюсах?
речь шла о коде, а не о программе
не просто на плюсах, а на чистых плюсах (без платформозависимых функций)
чтобы этот код можно было легко компилировать для разных платформ

я вот такого решения не знаю. Есть локали и юникод, но они глючат.
0
 Аватар для vlisp
1070 / 991 / 153
Регистрация: 10.08.2015
Сообщений: 5,420
23.12.2024, 10:42
Цитата Сообщение от Royal_X Посмотреть сообщение
не просто на плюсах, а на чистых плюсах (без платформозависимых функций)
чтобы этот код можно было легко компилировать для разных платформ
Вы что, все еще верите в эту несусветную чушь?
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6315 / 3037 / 1054
Регистрация: 01.06.2021
Сообщений: 11,570
23.12.2024, 10:56
Цитата Сообщение от vlisp Посмотреть сообщение
все еще верите в эту несусветную чушь
не верю, поэтому пишу на латинице для консоли. Нет времени писать велосипед под каждую платформу. Да и если нужно будет это делать, то для это есть кроссплатформенные инструменты.
0
 Аватар для volodin661
7094 / 2325 / 353
Регистрация: 10.12.2013
Сообщений: 8,022
29.01.2025, 18:49
Цитата Сообщение от Verevkin Посмотреть сообщение
Но я имел в виду классический юникод с постоянным размером символов в 2 байта (wchar_t).
Веревкин, это не классический Юникод, это UCS-2 ( Universal Character Set). Термин 'классический' тут неприменим, поскольку продержался он на вершине хит-парада совсем недолго, а изначальная идея «64к символов хватит всем» на практике оказалась неудачной.

wchar_t может быть 16-бит или 32-бит в зависимости от архитектурной реализации компилятора и по этой причине привязывает текст твоей программы к конкретному компилятору и делает её не вполне переносимой.

Юникодные строки состоят из codepoint-ов. Codepoint — это просто число в открытом диапазоне [0..0x110000), и у этого числа не определено бинарное представление. UCS-4 позволяет представлять codepoint-ы как, как минимум, 32-битные беззнаковые целые — но только для использования в памяти, т.к. бинарное представление в UCS4 не определено.

Как вариант, UCS-2 представляет codepoint-ы, как 16-ти битные беззнаковые целые, но при этом обрезает кодовое пространство до открытого диапазона [0..0x10000) (т.н. базовая плоскость), и в UCS-2 выразить символы из дополнительной плоскости невозможно. UCS-2, очевидно, является подмножеством UCS-4, и как и UCS-4, не имеет бинарного представления.

Поэтому и нужны «форматы трансформации Юникода» (Unicode transformation formats, UTF) — UTF-8, UTF-16 и UTF-32. Они определяют правила для преобразования каждого codepoint-а в один или больше unit-ов, которые и есть базовая единица бинарного представления.

UTF-32 транслирует каждый codepoint в один unit размером в 32 бита. В зависимости от порядка байт, его можно записать как UTF-32BE или UTF-32LE.

UTF-16 ставит в соответствие каждому codepoint-у один или два unit-а, каждый 16 бит размером. Два unit-а UTF-16 образуют суррогатную пару, которая декодируется в один code point. Суррогатные пары используются, чтобы выразить символы из дополнительных плоскостей — т.е. те, которые не может выразить UCS-2.

UTF-8 преобразовывает каждый codepoint в от одного до четырех (или до шести в более старом стандарте Unicode) code unit-ов, и каждый занимает в точности 8 бит.

=====

Хулины пассажи про 'родные кодировки', ' виндовая консоль понимает только символы OEM', 'cmd.exe до сих пор поддерживает кодировку cp866', 'Функции типа fgets(), которые получают ввод из потока stdin конкретно с буфера консольного окна' комментировать не буду, смешно, но если очень надо, могу.
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,038
Записей в блоге: 1
29.01.2025, 18:54
Цитата Сообщение от Royal_X Посмотреть сообщение
"Beta: Use Unicode UTF-8 for worldwide language support". Она находится в админ. настройках языка. После этого можно писать консольные программы хоть на китайской и в коде ничего не нужно сделать.
Только Компас 3D падать начинает в приложении "Валы и механические передачи 3D" при работе со ступенями с метрической резьбой.
Я так понимаю, перестает переваривать кириллическую "м" в названии резьбы.
0
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6315 / 3037 / 1054
Регистрация: 01.06.2021
Сообщений: 11,570
29.01.2025, 19:04
Croessmah, у меня частично перестает работать ABBYY Lingvo X6, поэтому не ставлю данную галку
0
Неэпический
 Аватар для Croessmah
18149 / 10731 / 2067
Регистрация: 27.09.2012
Сообщений: 27,038
Записей в блоге: 1
29.01.2025, 19:08
Цитата Сообщение от Royal_X Посмотреть сообщение
Программист должен думать о том, чтобы его код корректно работал на многих платформах.
Нахрена, если у меня приложение только под Windows? Мало того, оно ориентировано на русскоязычных пользователей. Собственно, тогда вообще не понятно, с какого бока там прикручивать латиницу. Собственно, всё исходит из поставленных задач.
0
Чугунные скороходы
 Аватар для ARRAYBOW
17 / 16 / 3
Регистрация: 25.12.2022
Сообщений: 367
29.01.2025, 19:15
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Что, невозможно реализовать мультиязычное приложение под консоль на плюсах
_setmode(_fileno(stdout), 0x20000); + wcout + wchar_t, у меня на vs2022 работает
1
Эксперт функциональных языков программированияЭксперт С++
 Аватар для Royal_X
6315 / 3037 / 1054
Регистрация: 01.06.2021
Сообщений: 11,570
29.01.2025, 19:18
Цитата Сообщение от Croessmah Посмотреть сообщение
Нахрена, если у меня приложение только под Windows? Мало того, оно ориентировано на русскоязычных пользователей.
В таком случае, действительно, не нужна латиница, достаточно кириллицы. Но вот сделать версию приложения под Астра Линукс не помешало бы. Кто знает, что будет завтра.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.01.2025, 19:18

Проблема с кириллицей
; DialogBox example format PE Console entry start include 'win32a.inc' include 'encoding\win1251.inc' section '.data'...

Добавление в бд. Проблема с кириллицей
У меня проблема при добавлении данных в бд на русс языке, на анг все нормально. При добавлении данных в таблице не видно, это наверно с...

Проблема с кириллицей в Unicode
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using...

Проблема с кириллицей в pandas
Добрый день. При считывании данных из базы в DataFrame с использованием pd.read_sql вместо русских букв возвращаются знаки вопроса. Вот так...

Проблема с кириллицей в Python3
Граждане, помогите порешать проблему с кириллицей на питоне-3. Частная задача - принять в переменную с клавы слово или букву, после...


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

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
Текстовый слайдер с нумерацией страниц и кроссбраузерность.
russiannick 18.07.2026
Один мой друг написал текстовый слайдер с нумерацией страниц. Сегодня я расскажу как он умудрился подружить его с кроссбраузерностью. Очевидно сложно угодить с шириной каждому браузеру. Один крадет. . .
Грибы - это мемы, дерево - это человек. Применение микоризной модели к теории меметики Докинза.
anaschu 18.07.2026
Меметический изоморфизм теории «всего»: Грибная сукцессия как модель эволюции идей Докинза Базовый код системы ОДУ микоризной сукцессии описывает не просто биологию, а универсальную. . .
Грибы - это корпорации, деревья - это государства. Механизм массонского захвата власти
anaschu 18.07.2026
Макроэкономический изоморфизм теории «всего»: Грибная сукцессия как модель транснационального капитализма Базовый код системы ОДУ микоризной сукцессии описывает не просто биологию, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru