Как сделать что-то вроде memcpy в D

У меня есть ячейка памяти a, и я хочу скопировать некоторое количество байтов в другую ячейку быстро, как бы я сделал это в D?

Например, как бы я сделал это:

int main()
{
    void* src_data = 0x40001255;
    void* dst_data = 0x47F22000;
    u32 size = 0x200;
    memcpy(dst_data, src_data, size);
}

Как бы также быстро заполнить структуру:

struct data_struct
{
    u32 block1;
    u32 block2;
    u32 block3;
    u32 block4;
    u32 block5;
    u62 block6;
    u128 bigblock;
} data_struct_t;

int main()
{
    void* src_data = 0x40001255;
    struct data_struct_t dst_data; 
    u32 size = sizeof(data_struct);
    memcpy(dst_data, src_data, size);
}

Спасибо! Roel

-121--1417158- Элегантно называют C++ от C Мы разрабатываем некоторые проекты в простой C (C99). Но у нас есть одна библиотека в качестве исходных кодов (математическая библиотека) в C++. Нам нужна эта библиотека, так что я хотел бы спросить, какой самый элегантный способ интегрировать это...

Мы разрабатываем какой-то проект в простой C (C99). Но у нас есть одна библиотека в качестве исходных кодов (математическая библиотека) в C++ . Нам нужна эта библиотека, так что я хотел бы спросить, какой самый элегантный способ интегрировать этот исходный код?

Соотношение между размерами C и C++ является 20:1 , поэтому переход к C++ не является вариантом. Следует ли использовать статическую библиотеку? DLL? (Это все в Windows).

48
задан Cartesius00 2 September 2011 в 09:17
поделиться