Импорт методов из dll на C - C#
Формулировка задачи:
Подскажите, пожалуйста, как импортировать в dll на C# такие вот методы из dll на C:
Какие должны быть параметры у экспортированных методов? Нужны ли какие-нибудь дополнительные действия (типа копирования или освобождения памяти)?
void write_int(int value, unsigned char **d, unsigned int *ds)
{
unsigned int size = *ds + sizeof(int);
*d = (unsigned char *)realloc(*d, size);
memcpy(*d + *ds, &value, sizeof(int));
*ds += sizeof(int);
}
int read_int(unsigned char **d, unsigned int * offset)
{
int value;
memcpy(&value, *d + *offset, sizeof(int));
*offset += sizeof(int);
return value;
}Решение задачи: «Импорт методов из dll на C»
textual
Листинг программы
void write_int(int value, unsigned char **d, unsigned int *ds)
{
unsigned int size = *ds + sizeof(int);
*d = (unsigned char *)realloc(*d, size);
*(int*)(*d + *ds) = value;
*ds += sizeof(int);
}
int read_int(unsigned char **d, unsigned int * offset)
{
int value = *(int*)(*d + *offset)
*offset += sizeof(int);
return value;
}