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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 5.00
Derpy
3 / 3 / 0
Регистрация: 25.12.2011
Сообщений: 20
#1

Преобразование LPVOID в int - C++

13.04.2012, 21:05. Просмотров 2880. Ответов 5
Метки нет (Все метки)

Собственно вопрос в коде
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <Windows.h>
#include <stdio.h>
 
DWORD WINAPI Func(LPVOID);
 
int main(void)
{
    int a=0;
    DWORD thID;
    CreateThread(NULL,NULL,Func,&a,NULL,&thID);
 
    char c;
    scanf("%c",&c);
    return 0;
}
DWORD WINAPI Func(LPVOID input)
{
    //Как тут преобразовать LPVOID в int?
    printf("Func\n");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.04.2012, 21:05     Преобразование LPVOID в int
Посмотрите здесь:

Немогу осуществить int => LPVOID => int - C++
Я сохранил в LPVOID адресс переменной int int a = 10; LPVOID lpv = (LPVOID)&amp;a; а теперь нужно сделать обратную операцию ...

преобразование из void* в int[n] - C++
Всем привет) Пишу программу, которая в отдельном потоке сортирует массив. такая проблема, на функцию ...

Преобразование hwnd в int - C++
Знаю что тема уже заезжена и полно подобных обсуждений, но не смог применить к своему либо не подошло. Требуется получить из edit и...

Преобразование string в int - C++
Всем привет, нужно преобразовать string в int #include &lt;iostream&gt; #include &lt;stdlib.h&gt; #include &lt;string.h&gt; #include &lt;stdio.h&gt;...

Преобразование int в CString ? - C++
Подскажите как преобразовать? itoa преобразовует в *char, а хотелось бы сразу в CString...

Преобразование Int в char - C++
от скуки баловался с кодом.решил проверить,можно ли сделать так? #include &lt;iostream&gt; int main(){ char b = 't'; int a =b; ...

Преобразование int в float - C++
Добрый день! int x = 20110511; double a = x; cout&lt;&lt;x&lt;&lt;' '&lt;&lt;a&lt;&lt;'\n'; Результат: 20110511 2.01105e+007 Число float...

Преобразование string в int - C++
Добрый день. Есть переменная типа string, в которой записана цифра. Как мою строку перевести к int?

Преобразование int к char - C++
Вот код #include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;iostream.h&gt; #include &lt;cstdio&gt; #include &lt;fstream&gt; #include &lt;cstdlib&gt; ...

преобразование wstring в int - C++
Как преобразовать wstring в int

Преобразование string в int - C++
у меня вот какая проблема.Я пытаюсь считывать строку,искать в ней числа и записывать их в двумерный массив целых чисел,подсчитывая их...

Преобразование string в int - C++
Помогите пожалуйста с преобразованием string к типу int, быть может не напрямую но хоть как нибудь, очень надо!!!


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nekto
342 / 287 / 10
Регистрация: 23.03.2012
Сообщений: 838
13.04.2012, 21:28     Преобразование LPVOID в int #2
C++
1
2
long long n;
memcpy(&n,&input,sizeof input);
Nick Alte
Эксперт С++
1608 / 1000 / 118
Регистрация: 27.09.2009
Сообщений: 1,927
Завершенные тесты: 1
13.04.2012, 21:34     Преобразование LPVOID в int #3
C++
1
2
3
4
5
DWORD WINAPI Func(LPVOID input)
{
    printf("a = %d\n", *static_cast<const int*>(input));
    return 0;
}
Derpy
3 / 3 / 0
Регистрация: 25.12.2011
Сообщений: 20
13.04.2012, 21:37  [ТС]     Преобразование LPVOID в int #4
Цитата Сообщение от Nekto Посмотреть сообщение
C++
1
2
long long n;
memcpy(&n,&input,sizeof input);
n получается равно не 0 а произвольному 7ми значном числу

Добавлено через 2 минуты
Цитата Сообщение от Nick Alte Посмотреть сообщение
C++
1
2
3
4
5
DWORD WINAPI Func(LPVOID input)
{
    printf("a = %d\n", *static_cast<const int*>(input));
    return 0;
}
Спасибо помогло
Unwebo
20 / 20 / 3
Регистрация: 13.04.2012
Сообщений: 38
14.04.2012, 00:22     Преобразование LPVOID в int #5
2 варианта:

Первый
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <Windows.h>
#include <stdio.h>
 
DWORD WINAPI Func(LPVOID);
 
int main(void)
{
    int a=0;
    DWORD thID;
    CreateThread(NULL,NULL,Func,&a,NULL,&thID);
 
    char c;
    scanf("%c",&c);
    return 0;
}
DWORD WINAPI Func(LPVOID input)
{
    int n = *(int*)input;
    printf("Func\n");
    return 0;
}


Второй
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <Windows.h>
#include <stdio.h>
 
DWORD WINAPI Func(LPVOID);
 
int main(void)
{
    int a=0;
    DWORD thID;
    CreateThread(NULL,NULL,Func,(LPVOID)a,NULL,&thID);
 
    char c;
    scanf("%c",&c);
    return 0;
}
DWORD WINAPI Func(LPVOID input)
{
    int n = (int) input;
    printf("Func\n");
    return 0;
}
p_r_a_g_m_a
109 / 61 / 18
Регистрация: 08.03.2012
Сообщений: 211
Завершенные тесты: 1
14.04.2012, 00:24     Преобразование LPVOID в int #6
Еще можно так:
C++
1
2
3
4
5
DWORD WINAPI Func(LPVOID input)
{
    printf("a = %d\n", *(int*)input);
    return 0;
}
Yandex
Объявления
14.04.2012, 00:24     Преобразование LPVOID в int
Ответ Создать тему
Опции темы

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