- Сообщения
- 3,999
- Репутация
- 967
Всегда мучил вопрос, как определить размер возвращаемой структуры char*.
Выходил из положения следующим образом:
Однако, с запасом как-то не по "взрослому"
Читал литературу по Си, мучил google, однако как это сделать более грамотно так и не нашёл. :(
Код:
typedef struct time_info_t {
char const * time;
}
Выходил из положения следующим образом:
Код:
$a_Ret = DllCall($hDll, 'ptr', 'time_info') ; некая функция возвращает char* (ptr)
$sTime = DllStructGetData(DllStructCreate('char[64]', $a_Ret[0]), 'time') ; оформляю структуру с запасом
ConsoleWrite($sTime & @CR)
; Результат "Jan 7 2014 03:31:50"
Однако, с запасом как-то не по "взрослому"

Читал литературу по Си, мучил google, однако как это сделать более грамотно так и не нашёл. :(