Язык Си в примерах/Верхний регистр: различия между версиями
Содержимое удалено Содержимое добавлено
Оформление, уточнения; примеры переписаны для посимвольного преобразования. |
+ ../ASCII коды символов/ (была: ../Максимум/), упрощено; →Задания: новый раздел. |
||
Строка 37:
</source>
''Главный цикл'' (и ''условие корректности'' ввода) этой программы
<strong >Обратите внимание,</strong> что сформировать условие «конец потока» при вводе с клавиатуры можно вводом (в зависимости от системы и предполагая настройки по-умолчанию) <kbd >Control-d</kbd> или <kbd >Control-z</kbd> (также обозначаются <kbd >C-d</kbd>, <kbd >^D</kbd>, <kbd >C-z</kbd>, <kbd >^Z</kbd>.)
== Использование стандартной библиотеки ==
Строка 45:
[[#upper.c |Приведенный выше]] код можно еще более упростить, если воспользоваться стандартной функцией преобразования регистра <code >toupper</code>, ''объявленной'' в заголовке <code >ctype.h</code>.<ref name="case-mapping" />
Некоторые ''реализации'' языка, кроме того, определяют функции <code >strlwr</code> и <code >strupr</code>, которые переводят в нижний и верхний регистр ''строки'', а не отдельные символы. Эти функции, однако, не являются
{{Якорь |toupper.c}}
Строка 65:
}
</source>
== Задания ==
# Проверьте работу программы вводом строк <code >Hello!</code> и <code >Привет!</code>. Удостоверьтесь, что лишь для первой из них выполняется заданное преобразование.
# Разработайте варианты программы, выполняющие (вновь для латиницы) a. преобразование <em >верхнего</em> регистра в нижний и b. «переключение» регистра — <code >Hello!</code> → <code >hELLO!</code>. (Указание: воспользуйтесь [[w:C11 |стандартными]] функциями <code >islower</code> и <code >isupper</code>.<ref name="islower" /><ref name="isupper" />)
==См. также==
Строка 74 ⟶ 79 :
{{Примечания | refs =
<!-- Пожалуйста поддерживайте алфавитный порядок для name. Спасибо. -->
<ref name="case-mapping" >{{Cite web | title = 7.4.2
<ref name="ferror" >{{Cite web | title = 7.21.10.3
<ref name="islower" >{{Cite web | title = 7.4.1.7 The islower function | url = http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf#page=220 | work = WG14 N1570 Committee Draft | publisher = ISO/IEC | datepublished = 2011-04-12 | lang = en | accessdate = 2012-11-19}}</ref>
<ref name="isupper" >{{Cite web | title = 7.4.1.11 The isupper function | url = http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf#page=221 | work = WG14 N1570 Committee Draft | publisher = ISO/IEC | datepublished = 2011-04-12 | lang = en | accessdate = 2012-11-19}}</ref>
<ref name="getchar" >{{Cite web | title = 7.21.7.6 The getchar function | url = http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf#page=350 | work = WG14 N1570 Committee Draft | publisher = ISO/IEC | datepublished = 2011-04-12 | lang = en | accessdate = 2012-11-19}}</ref>
<ref name="putchar" >{{Cite web | title = 7.21.7.8
}}
|