Вопрос Вместо фамилий выводятся символы с++. как исправить?

Регистрация
26 Сен 2013
Сообщения
59
Репутация
0
Спасибо
0
Монет
0
#include <iostream>

#include<string>

using namespace std;



// Определение структуры Student

struct Student {

string lastName;

int group;

int gender;

};



int main() {

setlocale(LC_ALL, "Rus");

Student anketa[100]{};

int n;

cout <<"Введите количество студентов:\n";

cin >> n;

// Ввод данных о студентах

cout << "Введите данные о студентах:\n";

for (int i = 0; i < n; i++) {

cout << "Студент " << i + 1 << ":\n";

cout << "Фамилия: ";

cin >> anketa.lastName;

cout << "Группа: ";

cin >> anketa.group;

cout << "Пол (м-1/ж-2): ";

cin >> anketa.gender;

}



// Вывод фамилий девушек

cout << "Фамилии девушек:\n";

for (int i = 0; i < n; i++) {

if (anketa.gender == 2 ) {

cout << anketa.lastName << endl;

}

}



}
249480003_77fb568910cf3553b9776d91e7d6f354_800.png

 
Проблема с кодировкой кирилицы. Можно использовать SetConsoleCP(1251);
SetConsoleOutputCP(1251); в main. И подкл. библиотеку Windows.h
 
Здравствуйте! У вас проблемы с чтением фамилии из stdin. Попробуйте вызвать std::cin.imbue(std::locale("ru_RU.UTF-8"))

Не забудьте подключить header <locale>
 
Смотри, что с кодировкой там в тебя
 
Назад
Сверху