Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
DarkMasterW
4 / 4 / 0
Регистрация: 25.10.2013
Сообщений: 230
#1

Приведение void* указателя к типу - C++

05.11.2013, 10:56. Просмотров 630. Ответов 4
Метки нет (Все метки)

C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
12
13
struct tParamStruct
{
    const char* Result;
};
tParamStruct ParamStruct;
 
 
void show(void *AdressPS)
{
    // ????????
    ParamStruct->Result = "qwe";
    cout << ParamStruct->Result;
}
*AdressPS является указателем на начало структуры ParamStruct. Каким образом преобразовать указатель и как потом использовать? Мои попытки типа *ParamStruct = static_cast<tParamStruct>(AdressPS); , к сожалению, не увенчались успехом.

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

Приведение указателя на void к другому типу? - C++
в поиске смотрел - не помогло! Возникла проблемка: В книге сказано, что указателю на void можно присваивать все типы указателей без...

Приведение void* к типу указателя на структуру - C++
Тема обсуждалась здесь, но решения так и нет нормального Есть два (и более, хоть до 20) линейных списков и функция обхода списка В...

Приведение void указателя к определенному типу с сохранением результата - C++
Есть функция funс(void *pointer, char type) { ... } Нужно чтобы в данной функции этот указатель приводился к определенному типу...

Приведение к void - C++
Доброй ночи! Просматривая код некоторой программы, обнаружил конструкцию следующего вида: void function(char a, char *p) { ...

Приведение к типу - C++
В чем разница? static_cast&lt;int&gt;(a); и (int)a

Приведение к типу-наследнику - C++
#include &lt;iostream&gt; class A { }; class B: public A { void foo() const { std::cout &lt;&lt; &quot;some is king of every fish&quot;; } }; int...

4
chedman
81 / 80 / 2
Регистрация: 30.10.2013
Сообщений: 251
05.11.2013, 11:08 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
 
using namespace std;
 
struct tParamStruct
{
    const char* Result;
};
 
 
 
 
void show(void *AdressPS)
{
    ((tParamStruct*)AdressPS)->Result = "qwe";
    cout << ((tParamStruct*)AdressPS)->Result;
}
 
 
int main()
{
    tParamStruct ParamStruct;
 
    show(&ParamStruct);
    return 0;
}
1
gray_fox
What a waste!
1521 / 1226 / 70
Регистрация: 21.04.2012
Сообщений: 2,565
Завершенные тесты: 3
05.11.2013, 11:08 #3
DarkMasterW, приводи к указателю на tParamStruct
C++
1
2
3
tParamStruct * param = static_cast<tParamStruct *>(AddressPS);
param->Result = "qwe";
cout << param->Result;
1
chedman
81 / 80 / 2
Регистрация: 30.10.2013
Сообщений: 251
05.11.2013, 11:11 #4
У меня преобразование в силе Си, а у gray_fox в стиле Си++.
0
DarkMasterW
4 / 4 / 0
Регистрация: 25.10.2013
Сообщений: 230
05.11.2013, 11:14  [ТС] #5
Большое спасибо, все зашуршало.
0
05.11.2013, 11:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.11.2013, 11:14
Привет! Вот еще темы с ответами:

Приведение к базовому типу - C++
#include &lt;iostream&gt; using namespace std; class A{ public: virtual ~A() {} }; class B: public A{ };

Приведение переменной к другому типу - C++
float a = (float)x; // старый стиль float b = static_cast&lt;float&gt;(y); // современный стиль разве по старому не удобнее? почему...

Приведение типа указателя - C++
Здравствуйте, у меня такой вопрос: как организовать приведение типа указателя к другому? Есть указатель string *ptr; на поле класса, нужно...

Приведение указателя на функцию - C++
Здравствуйте, у меня простейший вопрос, но самому не догнать что-то... В качестве аргумента некой функции используется указатель на...


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

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

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