Проблемы с вводом-выводом кириллицы 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Проблемы с вводом-выводом кириллицы



Работа в среде Visual C++ 2005 (в режиме консольных приложений) сопряжена с определенными неудобствами, вызванными различными стандартами кодировки символов кириллицы в операционных системах MS DOS и Windows. Напомним, что весь ввод-вывод в консольном окне идет в кодировке стандарта ASCII, а текст в исходных файлах, набираемый в текстовом редакторе Visual C++, имеет кодировку в стан­дарте ANSI. Символы кириллицы, в отличии от символов латинского алфавита, в этих стандартах имеют различную кодировку.

Для устранения неудобств работы с кириллицей можно включить в программу оператор #include “ConsolCyr.h”, предварительно поместив файл ConsolCyr.h в папку, в которую помещается файл с исходным текстом программы (файл находится в папке с заданиями на выполнение ЛР, которые вы можете получить у преподавателя). Это позволит вам при выполнении лабораторных работ (но не во всех случаях) устранить проблемы, связанные с использованием кириллицы.

Если в ЛР не требуется вводить с клавиатуры кириллицу (а только выводить символы кириллицы), то лучше вставить в начало функции main() оператор setlocale(0,”rus”), но при этом не использовать одновременно оба средства.

////////////////////////////////////////////

#include <iostream >

//#include "ConsolCyr.h"

using namespace std;

int main(){

//setlocale(0, "rus");

char str1[80];

cout << "Welcome to C++!" << endl;

cout << "Введите строку:" << endl; //введите строку: Привет, мир!

cin >> str1;

//cout <<"The value str1 = " << endl;

cout << "Знaчение строки str1 = " << endl;

cout << str1 << endl;

return 0;

}

//////////////////////////////////////////////////////////

Ничего не принимайте на веру. Откомпилируйте эту программу и убедитесь, что она дает ожидаемый результат. Для того, чтобы можно было просмотреть результаты работы программы в окне DOS до его закрытия, удобно в конце программы перед оператором return вставить оператор system("pause").

 

Замечания по потоковому вводу-выводу

Ввод из буфера входного потока одного слова в символьный массив str1. Предварительно весь текст нужно набрать на клавиатуре и нажать клавишу Enter, после чего весь текст поступит в буфер входного потока cin, а оттуда его можно пословно считывать с помощью перегруженной для входного потока операции >>(поразрядный сдвиг вправо) в переменную, стоящую справа от >>, в данном случае это символьный массив str1. Одна операция считывает одно слово. Если повторить операцию, то из буфера будет считано следующее слово. Если буфер пустой, то на экран выведется запрос на ввод данных в виде мерцающего курсора. Программа остановится и будет ожидать ввода данных с клавиатуры.

Потоковый ввод-вывод автоматически выполняет форматирование данных в соответствии с типом переменной, стоящей справа от знака операции.

Потоковый ввод-вывод будет рассматриваться подробно при изучении объектно-ориентированного программирования, а пока вам нужно запомнить синтаксис операторов потокового ввода–вывода, чтобы использовать его в разрабатываемых программах.

Задание.

1. С целью освоения потокового ввода-вывода измените программу так, чтобы она печатала введенную строку Привет, мир! полностью, используя для хранения введенного текста только один буфер (массив символов str1). В остальном вид экрана должен остаться прежним. Строка вводится с клавиатуры только один раз.

2. Разработайте программу, которая вводит два целых числа и выводит их сумму.

Конфигурация проекта

Visual C++ позволяет строить проект либо в отладочной конфигурации (Win32 Debug), либо в выпускной конфигурации (Win32 Release). Мы рекомендуем вам всегда работать с проектами в отладочной конфигурации. Обычно она установле­на по умолчанию. Все же не мешает проверить, с какой конфигурацией на са­мом деле идет работа. Для этого выберите в меню Project пункт Settings... От­кроется диалоговое окно Project Settings. Проверьте, какое значение установлено в окне комбинированного списка Settings For:.. Если это не Win32 Debug, то переключитесь на нужное значение через команду меню Build ► Set Active Con­figuration...



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 208; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.116.90.141 (0.004 с.)