double arrow

Операции сравнения

Указатели можно сравнивать, используя обычные операции отношения (= =,!=, <, <=, >, >=). Но при этом оба указателя (например, p и q) должны ссылаться на элементы одного и того же массива. В противном случае нет гарантии, что между адресами будет выполняться нужное соотношение. В результате операции p==q (p!=q) получается истина (ложь), если p и q указавают на один и тот же элемент массива. Остальные операции (p<q, p<=q, p>q, p>=q) дают в результате истину, если p указывает на элемент с меньшим (меньшим или равным, большим, большим или равным) индексом, чем q. Другими словами, получается истина, если p имеет меньший (меньший или равный, больший, больший или равный) адрес, чем q.

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

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

Использование операций над указателями при работе с одномерными массивами

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: