к экзамену по алгоритмизации и введению в программирование. Экзамен по алгоритмизации учить. Основные этапы решения задач на ЭВМ формулировка задачи(математическая)
Скачать 258.39 Kb.
|
Вернуть из функции, как и предать, можно только указатель на первый элемент массива. Также функция не может вернуть указатель на локальную переменную, поэтому либо её нужно объявить как статическую, либо возвратить глобальную переменную. Аргументы по умолчанию В Си аргументов по умолчанию НЕТ!!! Но если писать для C++, то пример ниже int sum(int a, int b = 10) { // int b = 10 - это и есть аргумент по умолчанию return a + b; } Все аргументы по умолчанию в определении функции должны располагаться справа. При вызове функции: sum(5); // результат будет 15 sum(6, 2); // результат будет 8 Динамические массивы Для работы нужна библиотека stdlib.h Функция malloc(size) выделяет блок памяти, размером size байт, и возвращает указатель на начало блока. Содержание выделенного блока памяти не инициализируется, оно остается с неопределенными значениями. Определение указателей и их особенностей в зависимости от типа данных Указатель – это переменная, которая хранит адрес области памяти. Указатель, как и переменная, имеет тип. Синтаксис объявления указателей: тип *ИмяОбъекта; Основной пример указателя - массив. Для справки: стоит заметить, что int* b, int * b и int *b эквивалентны. Указатели поддерживают арифметические операции: Сложение (вычитание) у указателей немного иное: прибавляя(вычитая) к указателю число, мы сдвигаем его на число * размер типа байт Операторы для работы с указателями: & — оператор взятия адреса переменной * — оператор разыменования - возвращает переменную по адресу указателя Размер указателя не зависит от его типа, а только от разрядности системы: на 32-битной - 4 байта на 64-битной - 8 байт Указатель одного типа можно привести к указателю другого: Принято при определении указателя, если он не инициализируется конкретным значением, делать его равным NULL: На языке C есть возможность создать указатель на неопределенный тип(универсальный указатель) - void. Ему может быть присвоен адрес переменной любого типа. Перед разыменованием, его нужно привести к одному из типов. Можно сделать вывод, что тип указателю нужен в основном только для разыменования и сложения(вычитания). |