我正在尝试编写一个Go函数,它将一个字符串作为C.CString发送到C函数。
height: auto;
我尝试了注释掉的部分和当前使用的部分,我得到以下内容
func AssertString(fact string) {
// sbytes := []byte(fact)
// ccp := (*C.char)(unsafe.Pointer(&sbytes[0]))
ccp := C.CString(fact)
C.EnvAssertString(C.env, ccp)
}
C函数EnvAssertString来自CLIPS专家系统库,如下所示:
fatal error: unexpected signal during runtime execution
[signal 0xb code=0x1 addr=0x30 pc=0x7431a9]
我假设它是如何使用Go生成的char指针,但我并不完全确定。有人有想法吗?