Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Miwa123
37 / 37 / 22
Регистрация: 16.04.2013
Сообщений: 319
Записей в блоге: 1
1

Работа с указателями

29.06.2014, 12:57. Просмотров 845. Ответов 5
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <conio.h>
using namespace std;
 
void fun(int *p)
{
    int *temp=new int;
    *temp=15;
    delete p;
    p=&*temp;
}
 
void main()
{
 
    int *asd=new int;
    *asd=10;
    fun(asd);
    cout<<*asd;
    getch();
}
ребят объясните почему p=&*temp; не работает(если запихать весь код в одну ф-ию работает)
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.06.2014, 12:57
Ответы с готовыми решениями:

работа с указателями
Вспоминаю с++ и в связи с этим возникло несколько вопросов. 1) если сделать...

Работа с указателями
Доброго времени суток! Прошу помощи в решении очень интересной задачи....

Работа с указателями
Нужно чтобы при каждом попадании &quot;1&quot;, в введенной строке выводилось сообщение...

Работа с указателями
Подскажите пожалуйста, зачем написано * Rad_to_deg void show_polar (const...

Работа с указателями
Добрый день! Нужно выполнить следующее задание: учитывая данные о пересдаче...

5
0x10
2571 / 1751 / 288
Регистрация: 24.11.2012
Сообщений: 4,377
29.06.2014, 13:00 2
В функции fun p - локальная переменная. Изменение адреса, который хранит этот указатель, не влияет на вызывающий код.

Добавлено через 54 секунды
Цитата Сообщение от Miwa123 Посмотреть сообщение
p=&*temp;
И это по идее упрощается до p = temp, но, как уже сказал выше, логика функции исходно кривая
0
Miwa123
37 / 37 / 22
Регистрация: 16.04.2013
Сообщений: 319
Записей в блоге: 1
29.06.2014, 13:05  [ТС] 3
как дать доступ ф-ии работать с указателем напрямую?
0
0x10
2571 / 1751 / 288
Регистрация: 24.11.2012
Сообщений: 4,377
29.06.2014, 13:06 4
Лучший ответ Сообщение было отмечено Miwa123 как решение

Решение

Передавать адрес указателя.
1
Miwa123
37 / 37 / 22
Регистрация: 16.04.2013
Сообщений: 319
Записей в блоге: 1
29.06.2014, 13:08  [ТС] 5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
void fun(int **p)
{
    int *temp=new int;
    *temp=15;
    delete *p;
    *p=temp;
    
}
 
void main()
{
 
    int *asd=new int;
    *asd=10;
    fun(&asd);
    cout<<*asd;
    getch();
}
допетрал спасибо.
0
Tulosba
:)
Эксперт С++
4749 / 3243 / 497
Регистрация: 19.02.2013
Сообщений: 9,046
29.06.2014, 13:17 6
Цитата Сообщение от Miwa123 Посмотреть сообщение
как дать доступ ф-ии работать с указателем напрямую?
Или передавать ссылку на указатель.
0
29.06.2014, 13:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.06.2014, 13:17

Работа с указателями
Написать программу работы с указателями. LONG *p1; ULONG x = 5; LONG y =...

Работа с указателями
1. Написать функцию, принимающую в качестве параметра указатель на первый...

работа с указателями
Помогите решить задачу в С++ (я в этом начиющий): 1)Из положительных значений...


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

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

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