русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Объектом, на которые указывают указатели, может быть как одиночная переменная базового типа, так и первый элемент одномерного массива.


Дата добавления: 2014-04-05; просмотров: 602; Нарушение авторских прав


При представлении выше объявления указателя, выделяется память для переменной типа указателя. Но сам указатель пока никуда не указывает. Рекомендуется проводить инициализацию указателя во время объявления.

int a;

int b=10;

В зависимости от контекста объявления память под указатель компилятор может выделить: в стеке (локальная переменная), в статической области данных (глобальная или статическая), heap (динамически независима от того, где находится сам объект).

int *p; //глобальная

{

int * p1; //локальная

static int * p2; //статическая

}

Инициализация указателя и оператор получения адреса объекта.

 

& - амперсант

Чтобы провести явную инициализацию указателя:

int n=1;

int *pn=&n;

int a[100];

int *pa=&a;

char *pstr=”string”;

char *pstr=&”string”;

 

Арифметика указателей.

 

int * p2;

p2=pn;

pn++;

pn=pn+sizeof(int);

p2=pn+5;

p2=pn+5*sizeof(int)

if (pn==p2)

Существует вид указателя на объекты любого типа:

void *;

void * pvoid;

int n;

char c;

int * pn;

pvoid=&h; // OK

pvoid=&c; //OK

pvoid=pn; //OK

reinterpret_cast

double d=99.99;

int n=d; //d=99

int n=0x12345;

char c=n;

int *pn=&n;

char *pc=reinterpret_cast

<char*> (&n);

Массивы.

 

Свойства массивов:

В памяти расположена совокупность упорядоченных элементов данных (последовательно).

Данные должны быть одного и того же типа.

Данные занимают непрерывно линейную область памяти.

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

5. Доступ к отдельным элементам массива может осуществляться по имени массива и индексу (порядковый №) элемента или с помощью оператора <<*>> разыменовывания.



Объявление встроенного массива.

Без extern

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

char cAr[10];

int iAr[15];

float fAr[5][3];

float f1Ar[3][3][8];



<== предыдущая лекция | следующая лекция ==>
Большинство директив препроцессора можно использовать в любом месте программы, при этом их действия распространяются от того места, где они используются до конца файла. | С extern


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.274 сек.