0
Как вы думаете, лучший способ инициализировать C.CString с длиной x в CGO? Справочная информация: Мне нужен символ * из правильного размера для параметра функции C, но я полагаю, следующий код может быть улучшен:Как инициализировать пустую C.CString в cgo
// length = 6
var buffer [6]byte
name := C.CString(string(buffer[:6]))
defer C.free(unsafe.Pointer(name))
или
// length = 6
name := C.CString(" ")
defer C.free(unsafe.Pointer(name))
Это действительно имеет смысл, но как мне его преобразовать обратно в строку go? – netsplit
'newString: = C.GoString ((* C.char) (s))' is – netsplit
@netsplit: да, вы конвертируете указатель в '* C.char', если вы хотите скопировать байты обратно в Пойдите в строку. – JimB