Основные понятия языка С
Компилятор GCC
73
и может привести к неправильному результату.
Использование вместо настоящих функций макросов с формальными
параметрами дает одно существенное преимущество: увеличивается скорость
выполнения кода, потому что в таких случаях не надо тратить ресурсы на
вызов функций. Однако если у макроса с формальными параметрами очень
большие размеры, то тогда из-за дублирования кода увеличение
скорости
достигается за счет увеличения размеров программы.
В сочетании с #define применяются операторы препроцессора # и ##.
Оператор #, который обычно называют оператором превращения в
строку (stringize), превращает аргумент, перед которым стоит, в строку,
заключенную в кавычки.
Оператор ##, который называют оператором склеивания (pasting), или
конкатенации конкатенирует две лексемы.
2.3. Структура программы на языке C, компиляция
Любая программа на С состоит из одной или нескольких функций.
Обязательно должна быть определена единственная главная функция main(),
именно с нее всегда начинается выполнение программы. В хорошем
исходном тексте программы главная функция всегда содержит операторы,
отражающие сущность решаемой задачи, чаще всего это вызовы функций.
Хотя main() и не является ключевым словом, относиться
к нему следует как к
ключевому. Например, не следует использовать main как имя переменной,
так как это может нарушить работу транслятора.
Следует отметить, что на С в принципе возможно создать программу,
содержащую только имена переменных и ключевые слова. Но обычно так не
поступают, потому что в С нет ключевых слов для выполнения
многих
операций, например, таких как ввод/вывод, вычисление математических
функций, обработка строк и т.п. Поэтому в большинстве программ