Вопрос

Are arrays in D fragmented? Is it safe to pass a pointer to the first argument to a C function taking a C-array? The C function will override the array contents. The C function takes a length parameter so it doesn't need to be NULL terminated. (It's not a string)

Это было полезно?

Решение 2

They are continuous and you can get the pointer to the first element with the .ptr field.

Другие советы

No. D arrays are continuous.

D arrays are internally represented as a pointer and a length, that is all.

http://dlang.org/arrays.html#dynamic-arrays

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top