Not pretty but if you are sure the array is zero-terminated, you can simply cast it to the correct type:
C.GoString((C.char*)(&p.hostname)) (untested) On Thu, Apr 30, 2020 at 1:06 PM Dean Schulze <dean.w.schu...@gmail.com> wrote: > That gives this error (which I've gotten with just about everything I try): > > cannot use &p.mach_name (type *[25]_Ctype_char) as type *_Ctype_char in > argument to _Cfunc_GoString > > It seems to be the fixed length of the char[] that gives cgo a problem. > > > On Thursday, April 30, 2020 at 1:46:34 PM UTC-6, Jan Mercl wrote: >> >> On Thu, Apr 30, 2020 at 8:17 PM Dean Schulze <dean.w...@gmail.com> >> wrote: >> > >> > I must be missing something pretty simple, but I have a C struct like >> this: >> > >> > typedef struct line >> > { >> > char hostname[HOSTNAME_MAX]; >> > char ip[IP_MAX]; >> > ... >> > } >> > >> > When I try to do the simple thing >> > >> > C.GoString(p.hostname) >> >> An array of a fixed size within a C struct is a value (the same as in >> Go), but C.GoString expects a pointer to a C.char. Try >> `C.GoString(&p.hostname)`. >> >> Not tested. Note that if hostname is not properly zero terminated, >> your code will crash or misbehave. >> >> (Automatic array decay applies to C code, but not in Go.) >> > -- > You received this message because you are subscribed to the Google Groups > "golang-nuts" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to golang-nuts+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/golang-nuts/72d6cdaa-a6ca-4a60-b60a-a3a42de5d8d6%40googlegroups.com > <https://groups.google.com/d/msgid/golang-nuts/72d6cdaa-a6ca-4a60-b60a-a3a42de5d8d6%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/CAEd86TznujW8f9JkyiCaNky952Nhw8t77mg1Enjixiwb_e7itA%40mail.gmail.com.