Aşağıdaki programı denedim, ancak derleme yaparken "struct initializer'da çok az değer" olduğunu söyledi.yapısal başlatıcıda çok az sayıda değer C struct in golang
package main
/*
#include <stdlib.h>
struct Person {
char *name;
int age;
int height;
int weight;
};
*/
import "C"
import "fmt"
type p C.struct_Person
func main() {
person := p{C.CString("Giorgis"), 30, 6, 175}
fmt.Println(person)
fmt.Println(C.GoString(person.name))
fmt.Println(person.age)
fmt.Println(person.height)
fmt.Println(person.weight)
}
Bu kablolu sorunu nasıl giderebilirim? Ayrıca, "char *" türünü "char" olarak değiştirdiğimde ve başlatıcıyı. İyi çalışıyor. Ayrıca
struct Person {
char name;
int age;
int height;
int weight;
};
, ben de iyi çalışıyor
struct Person {
char *name;
};
kullanın.
Neyse, nasıl düzeltebilirim? Teşekkürler.
Burada aşina değilseniz "dolgu" ifadesi şöyledir: http://c-faq.com/struct/align.html – AJPennster
Teşekkür @AJPennster, Bağlantınızı cevaba ekledim. – Sebastian