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

Преобразовать указатель одного типа в указатель другого. - C++

Восстановить пароль Регистрация
 
Guyver
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 19
09.11.2013, 12:11     Преобразовать указатель одного типа в указатель другого. #1
Всем привет. Мне нужно выполнить задание "Преобразовать указатель одного типа в указатель другого. " Что-то совсем не понимаю. Помогите пожалуйста...)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Guyver
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 19
13.11.2013, 06:59  [ТС]     Преобразовать указатель одного типа в указатель другого. #2
Потихоньку начал собирать программу, вроде как намудрил что-то, это то преобразование? )
C++
1
2
3
4
5
6
7
8
#include <stdio.h>
  int main (void)
  {
    int a =12.3;
    void *vp;
    vp=&a;
    printf("a=%d \n", *((int *)vp));
}
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
13.11.2013, 08:23     Преобразовать указатель одного типа в указатель другого. #3
Без создания нового указателя другого типа никак.
Guyver
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 19
16.11.2013, 05:44  [ТС]     Преобразовать указатель одного типа в указатель другого. #4
C++
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
int main(void)
{
int x, *p;
double **q;
x = 10;
p = &x;
q = &p;
printf ("%d", **q);
return 0;
}
Выдает ошибку, cannot convert int to double. Кто-нибудь поможет сделать правильно??
helloy
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 46
16.11.2013, 06:01     Преобразовать указатель одного типа в указатель другого. #5
Цитата Сообщение от Guyver Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
int main(void)
{
int x, *p;
double **q;
x = 10;
p = &x;
q = &p;
printf ("%d", **q);
return 0;
}
Выдает ошибку, cannot convert int to double. Кто-нибудь поможет сделать правильно??
C++
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
int main(void)
{
int x, *p;
double **q;
x = 10;
p = &x;
q = reinterpret_cast<double**>(&p);
printf ("%d", **q);
return 0;
}
так что ли?)
Guyver
0 / 0 / 0
Регистрация: 09.11.2013
Сообщений: 19
16.11.2013, 07:52  [ТС]     Преобразовать указатель одного типа в указатель другого. #6
Цитата Сообщение от helloy Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
#include <stdio.h>
int main(void)
{
int x, *p;
double **q;
x = 10;
p = &x;
q = reinterpret_cast<double**>(&p);
printf ("%d", **q);
return 0;
}
так что ли?)
Так работает) Спасибо
Yandex
Объявления
16.11.2013, 07:52     Преобразовать указатель одного типа в указатель другого.
Ответ Создать тему
Опции темы

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