Форум программистов, компьютерный форум CyberForum.ru

Указатели - C++

Восстановить пароль Регистрация
 
Dj.Sunrise
0 / 0 / 0
Регистрация: 01.10.2011
Сообщений: 21
30.10.2011, 21:48     Указатели #1
Вопрос об Указателях. Я нач. прогер прошу помочь. Тут написано так : "Пусть p1-указатель на int переменную с текущим значением 2000(т.e p1 содержит 2000). после выполнения (в 32 разряд системе) выражения p1++; Содержимое переменной-указателя p1 станет равным 2004 а не 2001!" . Я вот что-то сделал и не могу понять в чём дело.(у меня p1 это p3 =))) )
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<iostream>
using namespace std;
int main()
{ 
    int *p1,p2,p3 ;
    p2 = 2000;
    p1= &p2;
    p3=*p1;
    p3++;
    cout <<p3<<"\n";
    
    return 0;
    
}
эта программа всего лишь инкрементирует на 1 а нужно на 4 не знаю как сделать)) и Вот еще доп. Вопрос x = &y << тут кто или что указатель ??? и тут z = *x
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.10.2011, 21:48     Указатели
Посмотрите здесь:

Указатели.... C++
C++ Указатели
Указатели C++
C++ Указатели
C++ Указатели
C++ Указатели
C++ Указатели, такие указатели
Указатели.Строки и указатели C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
KeyGen
 Аватар для KeyGen
333 / 289 / 6
Регистрация: 07.08.2011
Сообщений: 789
Записей в блоге: 1
30.10.2011, 22:28     Указатели #2
Цитата Сообщение от Dj.Sunrise Посмотреть сообщение
p3++;
Ты прибавляешь адрес, переменную надо так: *p3++.
Net_Wanderer
235 / 208 / 19
Регистрация: 08.06.2011
Сообщений: 467
30.10.2011, 22:37     Указатели #3
Цитата Сообщение от KeyGen Посмотреть сообщение
Ты прибавляешь адрес, переменную надо так: *p3++.
Нет, операторы ! ~ ++ -- + - * (type) sizeof выполняются справа на лево, таким образом инкримент указателя будет сделан раньше разыменования.
Если хотите изменить значение переменной, то нужно написать (*p3)++ или *++p3
Yandex
Объявления
30.10.2011, 22:37     Указатели
Ответ Создать тему
Опции темы

Текущее время: 14:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru