С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
0 / 0 / 0
Регистрация: 27.02.2020
Сообщений: 18
1

В консоли не выводятся русские буквы.Появляются непонятные символы

27.02.2020, 16:10. Показов 2110. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Нужно написать программу-приветствие,фамилия/имя/отчество вводятся с клавиатуры
C++
1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
#include <iostream>
int main()
{
    setlocale(0, "");
    char str[50];
    printf("Введите фамилию,имя и отчество\n");
    scanf_s("%s", &str);
    printf("Здравствуйте,%s",str);
}
Миниатюры
В консоли не выводятся русские буквы.Появляются непонятные символы  
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.02.2020, 16:10
Ответы с готовыми решениями:

Русские символы в консоли выводятся нормально, латиница - нет
Добрый день. Подскажите пожалуйста, столкнулся с следующей проблемой, когда вывожу в консоль...

Не выводятся русские буквы: в консоли показываются непонятные символы
Нужно написать программу-приветствие,фамилия/имя/отчество вводятся с клавиатуры #include...

В директории сохранения файла русские символы заменяются на непонятные символы
При сохранении файл через диалоговое окно русские символы заменяются на непонятные тем самым Window...

На диске D появляются непонятные цифры и символы
Здравствуйте. 02c743f0883197537542ac - на диске D появляются вот такие символы и цифры. не могу...

7
627 / 391 / 135
Регистрация: 06.03.2017
Сообщений: 1,469
27.02.2020, 16:18 2
AronRi, А ты случаем пары не прогуливал? Скажи, чем различается С#, C++, C, и C↑ᶜC ?
0
910 / 795 / 329
Регистрация: 08.02.2014
Сообщений: 2,391
27.02.2020, 16:20 3
AronRi, ничего что тут C# раздел? ну а так, чтобы прочитать строку нужно просто подавать переменную str без использования &, но это не точно мой внутренний Сишник умер ещё на 2 курсе
0
0 / 0 / 0
Регистрация: 27.02.2020
Сообщений: 18
27.02.2020, 16:32  [ТС] 4
Pilarentes блин,прогуливал,вот в чем причина...А я-то думал

UPD можно было не отвечать,а пройти мимо
0
1843 / 1185 / 501
Регистрация: 14.10.2018
Сообщений: 3,180
27.02.2020, 16:57 5
AronRi, для языка C++ пишется так
C++
1
setlocale(LC_ALL, "ru");
PS делать это надо до вывода
0
337 / 237 / 103
Регистрация: 26.03.2019
Сообщений: 407
27.02.2020, 17:00 6
AronRi, Русские шрифты в консоли
В частности, смотрите в этой теме сообщение номер 3.
0
0 / 0 / 0
Регистрация: 27.02.2020
Сообщений: 18
27.02.2020, 17:24  [ТС] 7
Всё равно не работает,те же непонятные символы
0
4023 / 2569 / 430
Регистрация: 09.09.2017
Сообщений: 11,482
28.02.2020, 10:39 8
Поддержу тему. После долгого шаманства удалось придумать заклинание, корректно выводящее русский текст:
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
#include <locale.h>
#include <string.h>
#include <stdio.h>
#include <wchar.h>
 
#ifdef WIN32
  #include <windows.h>
  #include <io.h>
  #include "fcntl.h"
  char *my_setlocale(int category, const char *locale){
    setlocale(category, locale);
    SetConsoleCP(CP_UTF8); SetConsoleOutputCP(CP_UTF8);
    _setmode(_fileno(stdout), _O_U8TEXT);
    _setmode(_fileno(stdin), _O_U8TEXT);
  }
#else
  char *my_setlocale(int category, const char *locale){return setlocale(category, locale);}
#endif
 
int main(){
  my_setlocale(LC_ALL, "");
  
  wchar_t str[100]={0};
  int res = 0;
  wprintf(L"Русский текст. Проверка ввода:");
  res = wscanf(L"%S", str);
  wprintf(L"Введено (%i): [%ls]\n", res, str);
}
Выводить-то оно выводит, а со вводом проблема. Точнее, в нормальной консоли проблемы нет. Даже виндовая версия через wine работает прекрасно. Но вот в самой винде вводиться русский текст не желает. wscanf возвращает 0. Ввод латиницы без проблем. Может кто знает какие еще жертвы богам Майкрософта надо принести чтобы уговорить их консоль работать по-нормальному?
0
28.02.2020, 10:39
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.02.2020, 10:39
Помогаю со студенческими работами здесь

На диске D появляются непонятные цифры и символы
Такая-же проблема как в теме ниже. Я пытался удалить их но не получается. Может есть специальная...

Выводятся непонятные символы В ФАЙЛ
Столкнулся с проблемой. Сначала при выводе в консоль была проблема, но поправил setlocale(LC_ALL,...

почему выводятся непонятные символы?
В методах showauthor, showperson, showland выводится не то, что я вводила с клавиатуры. В чем...

Чтения из файла - в конце появляются непонятные символы
Читаю из файла так char str; char ch; int i=0; while ( (ch = getc(fp)) != EOF ) {...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Как написать микросервис на Go/Golang
InfoMaster 14.01.2025
Определение микросервиса, преимущества использования Go/ Golang Микросервис – это архитектурный подход к разработке программного обеспечения, при котором приложение состоит из небольших, независимо. . .
Как написать микросервис с нуля на C#
InfoMaster 14.01.2025
В современном мире разработки программного обеспечения микросервисная архитектура стала стандартом де-факто для создания масштабируемых и гибких приложений. Этот архитектурный подход предполагает. . .
Как создать интернет-магазин на PHP и JavaScript
InfoMaster 14.01.2025
В современном мире электронная коммерция стала неотъемлемой частью бизнеса. Создание собственного интернет-магазина открывает широкие возможности для предпринимателей, позволяя достичь большей. . .
Как написать Тетрис на Ассемблере
InfoMaster 14.01.2025
Тетрис – одна из самых узнаваемых и популярных компьютерных игр, созданная в 1984 году советским программистом Алексеем Пажитновым. За прошедшие десятилетия она завоевала симпатии миллионы людей по. . .
Как создать игру "Танчики" на Unity3d и C#
InfoMaster 14.01.2025
Разработка игр – это увлекательный процесс, сочетающий в себе творчество и технические навыки. В этой статье мы рассмотрим создание классической игры "Танчики" с использованием Unity3D и языка. . .
Организую платный онлайн микро-курс по доработке Android-клиента Telegram
_Ivana 14.01.2025
Официальная версия и распространенные форки не полностью устраивают? Сделай свою кастомную версию клиента! 4 занятия по 2 часа (2 недели пн, ср 19:00-21:00 по Москве). Первое вводное занятие. . .
Как создать приложение для фитнеса для iOS/iPhone на Kotlin
InfoMaster 14.01.2025
Создание собственного фитнес-приложения — это не только захватывающий, но и полезный процесс, ведь оно может стать вашим верным помощником на пути к здоровому и активному образу жизни. В современных. . .
Как создать приложение магазина для iOS/iPhone на Swift
InfoMaster 14.01.2025
Введение в разработку iOS-приложений Разработка приложений для iPhone и других устройств на базе iOS открывает огромные возможности для создания инновационных мобильных решений. В данной статье мы. . .
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution https:/ / www. cyberforum. ru/ blogs/ 223907/ blog8781. html прилагаю файл архива проекта в Gowin Eda. Восьмибитный счётчик из сумматора+ генератор сигнала. . .
UserScript для подсветки кнопок языков программировани­­­­я в зависимости от текущего раздела
volvo 13.01.2025
В результате работы этого скрипта подсвечиваются нужные кнопки не только в форме быстрого ответа, но и при редактировании сообщения: / / ==UserScript== / / @name CF_DefaultLangSelect / / . . .
Введение в модели и алгоритмы машинного обучения
InfoMaster 12.01.2025
Машинное обучение представляет собой одну из наиболее динамично развивающихся областей искусственного интеллекта, которая фокусируется на разработке алгоритмов и методов, позволяющих компьютерам. . .
Как на Python создать нейросеть для решения задач
InfoMaster 12.01.2025
В контексте стремительного развития современных технологий особое внимание уделяется таким инструментам, как нейросети. Эти структуры, вдохновленные биологическими нейронными сетями, используются для. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru