Программирование для Linux. Профессиональный подход - страница 4

стр.

Посылая письмо или сообщение, не забудьте указать название книги и ее авторов, а также ваш e-mail. Мы внимательно ознакомимся с вашим мнением и обязательно учтем его при отборе и подготовке к изданию последующих книг. Наши координаты:

E-mail: >info@williamspublishing.com

WWW >http://www.williamspublishing.com

Часть I

Сложные вопросы программирования в среде UNIX/Linux

Глава 1

Начало

В этой главе рассказывается о том, как выполнять базовые операции, связанные с написанием программы на языке С или C++ в среде Linux. В частности, описываются процессы создания и модифицирования исходного текста на C/C++, компиляции этого текста и отладки полученного результата. Те, кто уже знакомы с программированием в Linux, могут смело переходить к главе 2, "Написание качественных программ для среды GNU/Linux".

При изложении материала всей книги мы предполагаем, что читатели знакомы с языком программирования С и C++ и наиболее распространенными функциями стандартной библиотеки языка С. Тексты программ в книге написаны на С, за исключением случаев, когда рассматривается конкретная особенность программирования на C++. Мы также предполагаем, что читатели умеют выполнять базовые операции в интерпретаторе команд Linux, в частности создавать каталоги и копировать файлы. В связи с тем что многие Linux-программисты начинали свой путь в среде Windows, мы иногда будем указывать на сходства и различия между двумя операционными системами.

1.1. Редактор Emacs

Редактор — это программа, используемая для модификации исходных текстов. В Linux множество редакторов, но, очевидно, наиболее популярный и многофункциональный среди них — GNU Emacs.

Несколько слов о Emacs

Emacs — нечто гораздо большее, чем просто редактор. Это необычайно мощная программа, работая в которой можно, к примеру, читать и отправлять электронные сообщения. Способы настройки и расширения ее функциональных возможностей столь обширны, что заслуживают написания отдельной книги. Представьте, что, находясь в Emacs, вы можете путешествовать в Internet!

Впрочем, мы не ограничиваем свободу читателей, привыкших работать в другом редакторе. Ни один из примеров книги не зависит от использования Emacs. Представленный ниже небольшой вводный курс предназначен для тех из вас, кто еще не успел выбрать свой любимый редактор в Linux.

1.1.1. Открытие исходного файла C/C++

Чтобы запустить редактор Emacs, наберите >emacs в окне терминала и нажмите . Появится окно редактора, в верхней части которого имеется строка меню. Перейдите в меню Files, выберите команду Open Files и наберите имя требуемого файла в строке "мини-буфера" в нижней части экрана.[2] При создании исходного файла на языке С используйте расширения >.с или >.h. В случае C++ придерживайтесь расширений >.cpp, >.hpp, >.С или >.H. Когда файл будет открыт, введите нужный текст и сохраните результат, выбрав команду Save Buffer в меню Files. Чтобы выйти из редактора, воспользуйтесь командой Exit Emacs в меню Files.

Те, кто испытывают раздражение от необходимости постоянно щелкать мышью, могут воспользоваться клавиатурными сокращениями, ускоряющими открытие и сохранение файлов, а также выход из редактора. Операции открытия файла соответствует сокращение >C-x C-f. (Запись >C-x означает нажатие клавиши с последующим нажатием клавиши .) Чтобы сохранить файл, введите >C-x C-s, а чтобы выйти из Emacs — >C-x C-c. Лучше узнать о возможностях редактора можно с помощью встроенного учебника, доступного через команду Emacs Tutorial в меню Help. В нем приведено множество советов, которые помогут пользователям научиться эффективнее работать с Emacs.

1.1.2. Автоматическое форматирование

Программисты, привыкшие работать в интегрированной среде разработки, оценят имеющиеся в Emacs средства автоматического форматирования кода. При открытии исходного файла, написанного на C/C++, редактор самостоятельно определяет наличие в нем программного кода, а не просто текста. Если нажать клавишу в пустой строке, редактор переместит курсор в нужную позицию, определяемую положением предыдущей строки. Когда клавиша нажимается в строке, содержащей какой-то текст, сдвигается вся строка. Предположим, к примеру, что набран такой текст: