Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > помогите затолкнуть 2 DWORD в один __int64


Автор: 12usver12 18.3.2010, 14:59
есть структура 
FILETIME flt;
которая возвращает 2 DWORDA : младший flt.dwLowDateTime и старший  flt.dwHighDateTime
помогите сделать из этих 2 двордов один типа   __int64

Автор: GoldFinch 18.3.2010, 15:02
FILETIME flt;
__int64 r = *(__int64*)&flt;

Автор: 12usver12 18.3.2010, 15:19
ок.  сработало 

Автор: djamshud 18.3.2010, 15:58
Более общий способ, когда переменные не заточены в одной структуре:

Код

#include<stdint.h>
#include<stdio.h>

int main(){
int32_t v1=0x12345678,v2=0x90abcdef;
int64_t res=v2;
(res<<=32)|=v1;
printf("%llX\n",res);
return 0;
}

Автор: GoldFinch 18.3.2010, 17:13
djamshud
какбэ это вопрос про структуру FILETIME, про которую известно что это qword хранящий целое число

Автор: djamshud 18.3.2010, 18:07
GoldFinch, какбэ кэп на коне! Я отвечал не тебе, а топикстартеру, расширения его кругозора для.

Автор: GoldFinch 18.3.2010, 18:25
djamshud,
твой код не будет работать, причем по нескольким причинам.
у тебя есть шанс расширить свой кругозор, найдя в нем ошибки.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)