05.09.2016 Views

Стефан Р. - С++ Для чайников

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Обработка символов типа wchar_t<br />

В С+-1- на каждую переменную стандартного типа char выделяется 8-битовое поле,<br />

в котором можно представить 256 значений (от 0 до 255). Это 10 цифр, 26 строчных<br />

и 26 прописных букв. При этом остается более чем достаточно места для включения<br />

символов кириллицы.<br />

Проблемы с этим типом возникают, когда необходимо включить в текст восточные<br />

алфавиты, особенно китайские и японские иероглифы. А в них символов, без преувеличения,<br />

тысячи, т.е. намного больше, чем можно представить в обычном 8-битовом<br />

множестве символов.<br />

В C++ включена поддержка новейшего символьного типа wchar_t, или расширенного<br />

char. Хотя он не настолько встроен в язык, как тип char, многие функции<br />

C++ позволяют работать с ним. Например, wstrstr() умеет сравнить два символьных<br />

множества типа wchar_t. Если вы будете разрабатывать интернациональные приложения<br />

и захотите использовать восточные языки, вам понадобятся функции, которые<br />

работают с этим расширенным символьным типом. Но, так как этот вопрос намного<br />

сложнее, его подробное обсуждение выходит за рамки данной книги.<br />

УаЩмнение цапсфевишх<br />

фцшщий вывода<br />

C++ предоставляет набор низкоуровневых функций ввода и вывода. Наиболее часто<br />

используется функция printf, которая осуществляет вывод форматированной<br />

строки на устройство стандартного вывода. В простейшем варианте функции передается<br />

единственный аргумент — выводимая строка:<br />

printf("Строка для вывода на дисплей");<br />

Функция printf может осуществлять управляемый вывод с помощью внедряемых<br />

в строку команд управления форматом, начинающихся со знака %. Например, следующий<br />

фрагмент выводит строку со значениями целой и действительной переменных:<br />

int nlnt = 1;<br />

double doubleVar = 3.5;<br />

printf("Целое значение равно %i; "<br />

"действительное значение равно %f",<br />

nlnt, doubleVar);<br />

Целое значение будет вставлено на месте %i, а действительное — на месте %f,<br />

и выводимая строка будет выглядеть следующим образом:<br />

Целое значение равно 1; действительное значение равно 3.5<br />

Тем не менее в книге используется более простой и менее подверженный ошибкам<br />

со стороны программиста способ вывода с помощью потоков.<br />

Глава 7. Хранение последовательностей в массивах 87

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!