АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Примеры определения функции

Читайте также:
  1. II. Примеры, подтверждающие милость, явленную в Пророке, да благословит его Аллах и да приветствует.
  2. II. Функции тахографа и требования к его конструкции
  3. MS Excel.Текстовые функции, примеры использования текстовых функций.
  4. SCADA-система: назначение и функции
  5. SCADA. Назначение. Возможности. Примеры применения в АСУТП. Основные пакеты.
  6. V2: Электронные таблицы. Встроенные функции.
  7. А) Рабочее место б) Функции
  8. Автоматическая настройка УОЗ на атмосферном двигателе с помощью функции замеров ускорения.
  9. Активный и пассивный словарь. Историзмы и архаизмы. Типы архаизмов. Стилистические функции.
  10. Акустические понятия и определения
  11. Анатомия пищев.канала: отделы,сфинктеры и клапаны,их положение,строение и значение для пищев.функции.
  12. Антонимы. Типы антонимов. Антонимия и полисемия. Стилистические функции антонимов (антитеза, антифразис, амфитеза, астеизм, оксюморон и т.д.). Энантиосемия. Словари антонимов.

Объявление переменной

Объявление переменной задаёт имя и атрибуты переменной. Атрибутами переменной могут быть тип, количество элементов (для массивов),спецификация класса памяти, а также инициализатор. Инициализатор – это константа соответствующего типа, задающая значение, которое присваивается переменной при создании.

Объявление переменной имеет следующий синтаксис:

 

[ <спецификация класса памяти> ] <тип> <имя> [= <инициализатор> ]

[, <имя> [= <инициализатор> ] ... ];

Примеры объявления переменных

int x; // Объявление переменной целого типа без инициализатора
double y = exp(1); // Переменная вещественного типа инициализируется числом e. // exp(x) – функция, вычисляющая ex.
int a, b = 0; // Объявление двух переменных целого типа. Переменная b инициализируется значением 0.

В языке С++ нет ограничений на количество символов в имени. Однако некоторые части реализации (в частности, компоновщик) недоступны автору компилятора, и они иногда накладывают такие ограничения.

Объявление и определение функции

Объявление функции задаёт имя функции, тип возвращаемого значения и количество и типы параметров, которые должны присутствовать при вызове функции. Указание void в качестве возвращаемого значения означает, что функция не возвращает значения.

Определением функции является объявление функции, в котором присутствует тело функции. Определение функции имеет следующий синтаксис:

 

<тип> <имя> ( <список формальных параметров> )

{

[ <объявления> ]

[ <операторы> ]

}

Типы в определении и объявлениях функции должны совпадать. Однако, имена параметров не являются частью типа и не обязаны совпадать.

Все функции в программе существуют на глобальном уровне и не могут быть вложены друг в друга.

Среди функций выделяется одна главная функция, которая должна иметь имя main. С нее начинается выполнение программы, обычно она управляет выполнением программы, организуя вызовы других функций. Для того чтобы программа могла быть скомпилирована и выполнена, она должна содержать, по крайней мере, определение функции main.

Примеры определения функции

double Cube(double x);   // // Объявление (прототип) функции  
void main() { printf("%lf\n", Cube(5)); }   // Главная функция программы, которая печатает 53
double Cube(double x) { return x * x * x; }   // Функция одного вещественного аргумента, которая возвращает вещественное значение, // равное кубу аргумента

При вызове функции выделяется память под её формальные параметры, и каждому формальному параметру присваивается значение соответствующего фактического параметра. Семантика передачи параметров идентична семантике инициализации. В частности, проверяется соответствие типов формальных и фактических параметров и при необходимости выполняются либо стандартные, либо определённые пользователем преобразования типов. Существуют специальные правила для передачи массивов в качестве параметров, средства для передачи параметров, соответствие типов для которых не проверяется, и средства для задания параметров по умолчанию.

Функция должна возвращать значение, если она не объявлена как void. И наоборот – значение не может быть возвращено из функции, если она объявлена как void. Как и передача параметров, семантика возврата значения из функции идентична семантике инициализации. Возвращаемое значение задаётся инструкцией return.

int f1() { } void f2() { } // Ошибка – не возвращается значение // Правильно
int f3() { return 1; } void f4() { return 1; } // Правильно // Ошибка – значение возвращается в функции void
int f5() { return; } void f6() { return; } // Ошибка – не указано возвращаемое значение // Правильно

Функция с типом void не может возвращать значение. Однако вызов функции с типом void не даёт значения, так что функция с типом void может использовать вызов функции с типом void как выражение в инструкции return.

void g() {... }   void h() { return g(); }     // Правильно

Такая форма инструкции return важна при написании шаблонов функций, когда тип возвращаемого значения является параметром шаблон 2.3. Препроцессор

Препроцессор – это программа, которая обрабатывает текст вашей программы до компилятора. Таким образом, на вход компилятора попадает текст, который может отличаться от того, который видите Вы. Работа препроцессора управляется директивами. С помощью препроцессора можно выполнять следущие операции:

включение в программу текстов из указанных файлов;

замена идентификаторов последовательностями символов;

макроподстановка, т.е. замена обозначения параметризованным текстом, формируемым препроцессором с учетом конкретных аргументов;

исключение из программы отдельных частей текста (условная компиляция).

 


 

22. Алфавит и идентификаторы в С\С++

Алфавит языка

Алфавит языка — это тот набор знаков (символов), который допустим в данном языке. Такое определение справедливо и для языка человека, и для языков программирования.

В языке С++ алфавит можно подразделить на следующие группы знаков:

прописные и строчные латинские буквы (A, B,..., Z, a, b,..., z);

арабские цифры (0, 1, 2, 3, 4, 5, 6, 7, 8, 9);

специальные знаки: ", { } | [ ] () + - / % \; '.:? < = > _! & * # ~ ^

пробельные символы — это символы пробела, табуляции, перехода на новую строку.

 

Идентификаторы

Идентификатор — это имя какого-либо объекта программы. Например, имена дают переменным, функциям, классам и т.д. Имя может состоять из латинских букв, цифр и символа_ (символ подчеркивания). Начинаться имя может с буквы или символа подчеркивания, но не с цифры. Важно учитывать, что прописные и строчные латинские буквы, используемые в идентификаторах, считаются различными (это требование является общим для всех С-подобных языков: С, С++, С#, Java, Perl и многих других.

Общепринятые рекомендации по использованию имён:

желательно, чтобы имя объекта было осмысленным;

в качестве имён констант используйте имена, состоящие из прописных латинских букв, например: PI, GAMMA;

не используйте имена, начинающиеся с символа подчеркивания, так как такие имена часто используют разработчики компиляторов для своих целей;

чем больше область видимости имени, тем более выразительным и длинным должно быть имя. Короткие однобуквенные или двухбуквенные имена допустимы только внутри небольших блоков программы, внутри коротких функций пользователя.

Длина имени в большинстве случаев не ограничена, но на длину внешних имён (имён библиотек, функций) может накладывать ограничение операционная система.

Ключевые слова

Ключевые (зарезервированные) слова — это слова, которые можно использовать в программе только по их прямому назначению, т.е. эти имена нельзя использовать для обозначения, например, своих переменных.

В языке С++ имеется 63 ключевых слова. Все они приведены в таблице:

asm do if return typedef
auto double inline short typeid
bool dynamic_cast int signed typename
break else long sizeof union
case enum mutable static unsigned
catch explicit namespace static_cast using
char export new struct virtual
class extern operator switch void
const false private template volatile
const_cast float protected this wchar_t
continue for public throw while
default friend register true  
delete goto reinterpret_cast try  

 

Нет смысла заучивать сразу все ключевые слова языка С++. Лучше по мере изучения языка запоминать и ключевые слова. А пока достаточно знать несколько наиболее употребительных ключевых слов, которые начнем использовать в ближайшее время, например:

for, do, if, else, return, int, double.


 

23. Целый тип данных в С\С++


1 | 2 | 3 | 4 | 5 | 6 | 7 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.01 сек.)