Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
JokerCD
0 / 0 / 3
Регистрация: 02.01.2014
Сообщений: 41
#1

Увеличить указатель на размер адресуемой им структуры - C++

05.01.2014, 12:50. Просмотров 1046. Ответов 11
Метки нет (Все метки)

Увеличить указатель на размер адресуемой им структуры.
Буду очень признателен за помощь.

http://www.cyberforum.ru/cpp-beginners/thread2158385.html

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.01.2014, 12:50
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Увеличить указатель на размер адресуемой им структуры (C++):

Увеличить указатель на размер адресуемой структуры
помогите пожалуйта решить пару задач, задачи не сложные, но я не могу в них...

Увеличить размер выводимого текста (увеличить буквы) функции outtextxy
Здравствуйте. Я вывожу текст с помощью функции Функция outtextxy. Можно ли...

Функция внутри структуры использует указатель, как поле этой структуры
Коротко, есть класс A, описан в файле A_class.h ну и реализованы функции в...

Указатель на указатель внутри структуры
Приветствую. Есть 2 структуры: enum category { Technical, History, Fiction };...

Исследование структуры FILE или: что вообще можно выудить из этой структуры, указатель на которую мы получаем при открытии файла?
Ничего нельзя. Итак, новичкам напомню, что после выполнения кода FILE* f=...

11
Петррр
6155 / 3455 / 896
Регистрация: 28.10.2010
Сообщений: 5,926
05.01.2014, 13:01 #2
C++
1
pointer++;
0
JokerCD
0 / 0 / 3
Регистрация: 02.01.2014
Сообщений: 41
05.01.2014, 13:09  [ТС] #3
Можно код полностью?
0
0x10
2554 / 1734 / 285
Регистрация: 24.11.2012
Сообщений: 4,361
05.01.2014, 13:15 #4
Цитата Сообщение от JokerCD Посмотреть сообщение
Можно код полностью?
А можно задание полностью?
Инкремент указателя так и работает - сдвигает указатель на размер объекта. Какой вопрос, такой и ответ.
0
__General__
24 / 24 / 12
Регистрация: 04.01.2014
Сообщений: 91
Завершенные тесты: 2
05.01.2014, 13:23 #5
Нене, если надо увеличить указатель на размер адресуемой им структуры, то
C++
1
pointer += sizeof(*pointer);
0
JokerCD
0 / 0 / 3
Регистрация: 02.01.2014
Сообщений: 41
05.01.2014, 13:25  [ТС] #6
Это и есть полностью задание. Наверное нужно просто продемонстрировать на любом примере.
0
0x10
2554 / 1734 / 285
Регистрация: 24.11.2012
Сообщений: 4,361
05.01.2014, 13:34 #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 
int main()
{
    int arr[] = {1, 3};
 
    int* it1 = arr;
    int* it2 = it1 + 1;
 
    size_t addr1 = reinterpret_cast<size_t>(it1);
    size_t addr2 = reinterpret_cast<size_t>(it2);
 
    std::cout
        << std::hex << std::showbase
        << "[0]: " << addr1 << std::endl
        << "[1]: "  << addr2 << std::endl
        << "diff: " << addr2 - addr1 << std::endl
        << "sizeof int: " << sizeof(int)
        << std::endl;
 
    return 0;
}
1
Tulosba
:)
Эксперт С++
4746 / 3240 / 496
Регистрация: 19.02.2013
Сообщений: 9,046
05.01.2014, 13:36 #8
__General__, не болтайте ерундой.
1
JokerCD
0 / 0 / 3
Регистрация: 02.01.2014
Сообщений: 41
05.01.2014, 13:38  [ТС] #9
Спасибо, наверное подойдет.
0
__General__
24 / 24 / 12
Регистрация: 04.01.2014
Сообщений: 91
Завершенные тесты: 2
05.01.2014, 13:53 #10
Tulosba, подскажите, в каком месте ерунда
0
Tulosba
:)
Эксперт С++
4746 / 3240 / 496
Регистрация: 19.02.2013
Сообщений: 9,046
05.01.2014, 14:00 #11
__General__, посмотрите на пример в #7 сообщении.
0
alsav22
5438 / 4833 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
05.01.2014, 14:26 #12
Цитата Сообщение от __General__ Посмотреть сообщение
Нене, если надо увеличить указатель на размер адресуемой им структуры, то
C++
1
pointer += sizeof(*pointer);
Увеличить указатель - увеличить значение указателя, т.е. содержащийся в нём адрес. Увеличить указатель на int на размер int, значит увеличить адрес на размер int.
Если так:
C++
1
pointer += sizeof(*pointer);
То тут прибавление к указателю числа, равного размеру типа содержимого. Вступает в действие арифметика указателей. Значение указателя (адрес) увеличится на размер типа содержимого в квадрате.
1
05.01.2014, 14:26
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.01.2014, 14:26
Привет! Вот еще темы с решениями:

Как увеличить размер стека?
Есть быстрая сортировка - но выдает ошибку Stack overflow на массиве 100,7 Но...

Как увеличить размер программы?
Здравствуйте интересует один вопрос, есть простенькая программа не важно какая,...

Как увеличить размер консольного окна
Хочу увеличить ширину консольного окна но не пойму как это можно сделать к...

Как увеличить размер дин. массива средствами С++
Привет всем!!! Подскажите плз, как увеличить размер (т.е добавить один элемент...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru