• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

С++ указатели, подскажите

13.08.2019
5
0
BIT
0
Не так долго учу C++, простите за простой вопрос.

Код пример:
C++:
#include <iostream>

using namespace std;

int main()
{
    
    int abc = 1;
    int bca = 2;

    if (&abc < &bca)
    {
        cout << &bca << endl << " bca = "<< bca;
    }
    else
    {
        cout << &abc << " abc = "<< abc;
    }
}
Код:
Ответ: &bca > &abc


C++:
#include <iostream>

using namespace std;

int main()
{
    int bca = 2;   // меняем местами 
    int abc = 1;
 

    if (&abc < &bca)
    {
        cout << &bca << endl << " bca = "<< bca;
    }
    else
    {
        cout << &abc << " abc = "<< abc;
    }
}
Код:
Ответ: &abc < &bca


Вопрос, какой смысл сравнивать указатели, если адрес в памяти, переменной, которая инициализирована позднее всегда больше?
 
D

Damarion6595

А для чего вообще тебе понадобилось сравнивать адреса?
Обычно сравнивают содержимое которое находиться в памяти по этим адресам.

C++:
...
   
int a = 10;
int b = 5;

int *ptr_a = &a;
int *ptr_b = &b;

if (*ptr_a > *ptr_b) {
    ...
}

...
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!