Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
C_Lect1.doc
Скачиваний:
3
Добавлен:
08.09.2019
Размер:
56.32 Кб
Скачать

5

Язык c. Лекция 1

1. Общая характеристика языка

Язык C — это один из наиболее распространенных и популярных языков программирования. На нем пишут самые разные программы — как системные, так и прикладные. Вероятно, бóльшая часть современного программного обеспечения, начиная от операционных систем, компиляторов, систем управления базами данных, текстовых процессоров и прочих офисных программ и заканчивая всевозможными играми, написаны именно на C или на С++ (языке объектно-ориентированного программирования, построенном на основе C).

C — язык высокого уровня (машинно-независимый), однако некоторые его элементы (в частности, размеры значений разных типов) зависят от архитектуры компьютера. Это связано с общей ориентацией языка C на достижение максимальной эффективности (производительности) программ. Поэтому предусмотренные в C фундаментальные (базовые) типы данных — это те виды данных, с которыми непосредственно умеет работать процессор. Некоторые операции позволяют непосредственно работать с машинным (двоичным) представлением информации, и программы, использующие эти возможности языка, могут оказаться «привязанными» к определенной архитектуре, что затруднит их перенос на другие типы компьютеров. В то же время язык C обладает набором средств, облегчающих написание переносимых (т.е. не требующих переделок при переходе на другую платформу) программ. В целом можно сказать, что в зависимости от намерений и квалификации программиста, на C можно написать как программу, максимально использующую все возможности и особенности конкретного процессора, так и программу, в полной мере машинно-независимую, легко переносимую на компьютер любого типа.

Язык C с самого начала предназначался для профессионального программирования (в отличие, например, от Паскаля, который создавался исключительно ради обучения). Поэтому выдержан общий принцип: программист знает, чего он хочет, понимает смысл своих действий и несет за их последствия полную ответственность. В частности (в отличие от того же Паскаля), язык не налагает каких-либо запретов и ограничений на совместное использование и преобразование разных типов данных, достаточно лишь явно обозначить свои намерения (неявные преобразования сомнительного характера либо не выполняются вовсе, либо сопровождаются предупреждающими сообщениями компилятора). Эта особенность создает для новичков повышенную опасность ошибок (иногда с трудом обнаруживаемых), но она же позволяет квалифицированному программисту достигать желаемой цели, всегда оставаясь в рамках стандартного языка, не прибегая к каким-либо обходным маневрам и хитростям, чтобы «обмануть» компилятор.

Одна из характерных особенностей языка C обозначена его создателями как «компактность». Это значит, что число лежащих в основе идей и принципов невелико, набор конструкций ограничен, но и те, и другие обладают большой общностью и гибкостью и позволяют ясно, изящно и кратко записывать самые сложные алгоритмы. При этом в языке почти нет «лишних», редко используемых элементов. Помимо всего прочего, компактность значительно облегчает изучение языка C.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]