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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Miwa123
37 / 37 / 1
Регистрация: 16.04.2013
Сообщений: 317
Записей в блоге: 1
#1

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

29.06.2014, 12:57. Просмотров 279. Ответов 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; не работает(если запихать весь код в одну ф-ию работает)
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.06.2014, 12:57     Работа с указателями
Посмотрите здесь:

работа с указателями - C++
Как ПРАВИЛЬНО передать в функцию, массив, используя адресацию? Программа находит в массиве слово и перед ним вставляет какое то слово, то...

Работа с указателями - C++
Здравствуйте! Есть массив созданный ГСС. Надо написать функция которая вычисляет сколько в нем четных чисел, выделяет память под них и...

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

Работа с указателями - C++
Расскажите как работает каждая строка в коде char *A = &quot;123456789&quot;; unsigned B = 1; char *X = A + B; char *Y = A - (-...

Работа с указателями - C++
Помогите пожалуйста объяснить, не понимаю почему число присваемое через указатель *А в кавычках, и равны ли *А и просто А??? char *A =...

Работа с указателями - C++
Доброго времени суток, нужна помощь. Данный две задачи, обе работают правильно: Дан целочисленный массив размера N. Преобразовать...

Работа с указателями - C++
Дана динамическая целочисленная матрица. Построить динамический одномерный массив, каждый элемент которого равен сумме элементов одной...

Работа с указателями - C++
Всем здравия. Нужна ваша помощь. Есть задание по С++. К сожалению работала в основном по С# да и с указателями не совсем лажу. Может кто...

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

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

работа с указателями - C++
#include &lt;iostream&gt; using namespace std; int main() { char *res=&quot;&quot;; res=&quot;1&quot;; res=&quot;2&quot;; ...

Работа с указателями - C++
#include &lt;iostream&gt; #include &lt;cstdio&gt; #include &lt;iomanip&gt; using namespace std; int main() { int i;float f;long int l;double d;...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2459 / 1631 / 238
Регистрация: 24.11.2012
Сообщений: 4,009
29.06.2014, 13:00     Работа с указателями #2
В функции fun p - локальная переменная. Изменение адреса, который хранит этот указатель, не влияет на вызывающий код.

Добавлено через 54 секунды
Цитата Сообщение от Miwa123 Посмотреть сообщение
p=&*temp;
И это по идее упрощается до p = temp, но, как уже сказал выше, логика функции исходно кривая
Miwa123
37 / 37 / 1
Регистрация: 16.04.2013
Сообщений: 317
Записей в блоге: 1
29.06.2014, 13:05  [ТС]     Работа с указателями #3
как дать доступ ф-ии работать с указателем напрямую?
0x10
2459 / 1631 / 238
Регистрация: 24.11.2012
Сообщений: 4,009
29.06.2014, 13:06     Работа с указателями #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Передавать адрес указателя.
Miwa123
37 / 37 / 1
Регистрация: 16.04.2013
Сообщений: 317
Записей в блоге: 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();
}
допетрал спасибо.
Tulosba
:)
Эксперт С++
4392 / 3235 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
29.06.2014, 13:17     Работа с указателями #6
Цитата Сообщение от Miwa123 Посмотреть сообщение
как дать доступ ф-ии работать с указателем напрямую?
Или передавать ссылку на указатель.
Yandex
Объявления
29.06.2014, 13:17     Работа с указателями
Ответ Создать тему
Опции темы

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