Введение в потоки ввода-выводаСтр 1 из 13Следующая ⇒
Смешение стилей комментария В одной и той же программе одновременно могут употребляться комментарии С и С++. В листинге 1.2 приводится несколько таких примеров.
Листинг 1.2. COMMENTS.CPP (сравнение типов комментариев С и С++) 1: #include <iostream.h> 2: 3: //-------------------------- ................ 4: // Автор : Том Сван 5: // Версия : v1.0 6: // Назначение : Демонстрация комментариев в С++ 7; // - 8: 9: main() 10: { 11: cout « "A Brief С++ Commentary\n"; // Вывести заголовок 12: cout « "\n"; // Вывести пустую строку после заголовка 14: /* Этот абзац демонстрирует, что комментарий на языке С может 15: занимать более одной строки. 16: Комментарий на С++ ограничен одной строкой. */ 18: cout « "// This is not a comment.\n\n"; // Это комментарий 19:"cout « "/* This also is not comment.*/ \n\n"; 20: cout /* Это комментарий. */ « "This text is displayed.\n"; 21: return 0; \ 22: }
В интегрированной среде при выделении синтаксиса цвет комментариев очень похож на цвет строчек текста, что делает COMMENTS.CPP трудным для чтения. Для изменения цветов выберите в Option | Environment разделах Syntax Highlighting | Cmtomize, затем Comment из списка Element и щелкните кнопкой мыши на альтернативном цвете переднего плана (FG). (Я использую темно-серый.) В строках 3~7 используется комментарий С++ для небольшого информационного заголовка, описывающего программу. Многие программисты любят "помечать" свои исходные файлы своеобразно стилизованными заголовками, которые могут содержать информацию о программе, исправлениях, дате модификаций и т.п. Строки 11-12 демонстрируют классический способ завершать операторы на С++ поясняющими комментариями. Строки 14-16 содержат многострочный комментарий на ANSI C. Для написания аналогичного комментария на С++ каждую строку следовало бы начинать с / /. Строки 18-19 иллюстрируют важный принцип: комментарии любого стиля не должны оказаться в середине символьной строки. Строка 20 показывает, что только комментарий стиля ANSI C может быть вложен внутрь оператора — прием, приносящий скорее вред, чем пользу, и лучше его избегать. Введение в потоки ввода-вывода Поведение объекта потока ввода-вывода очень похоже на стандартный ввод-вывод потоков файлов. Потоки cout(character out) и cin(character in) имеют множество разнообразных возможностей. Чтобы отобразить символ с, вы можете написать cout << с;или cout.put(c); Функция put() — член cout, это новое понятие, с которым вы будете часто встречаться в следующих разделах. Для вызова функции-члена, отделите его точкой от cout, как в записи, используемой для доступа к члену структуры. Поток cout— пример класса, который может иметь относящиеся к нему функции, такие, как put(). Вы должны вызывать функцию-член только со ссылкой на объект, подобный cout. Без этого выражение put(c); // ??? попытается вызвать независимую функцию put(). Оператор cout.put(c); вызовет функцию put(), которая принадлежит cout. Для того чтобы прочитать символ из стандартного ввода, следует использовать поток ввода cin, стоящий перед оператором »(взять из). Оператор cin » с; читает один символ из стандартного ввода и присваивает его переменной с. или: cin.get(c); Листинг 1.3. FILTER.CPP (простая программа-фильтр на С++) 1: #include <iostream.h> 2: 3: main() 4: { 5: char с; 6: 7: while (cin.get(c)) 8: cout.put(c); 9: return 0; 10: } Строка 7 в FILTER.CPP вызывает cin.get(c) для ввода символа. Выражение cin.get(c) возвращает значение типа int или нуль при достижении конца источника ввода. Строка 8 передает все символы из источника в стандартный вывод. ©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.
|