gpt4 book ai didi

c - 戈朗 : How to correctly parse UTF-8 string from C

转载 作者:IT王子 更新时间:2023-10-29 01:55:16 24 4
gpt4 key购买 nike

我是围棋界的新手,所以这可能是显而易见的。

我有一个 Go 函数,我通过 go build -buildmode=c-shared 和相应的 //export funcName 注释将其公开给 C。(你可以在这里看到它:https://github.com/udl/bmatch/blob/master/ext/levenshtein.go#L42)

我的转换目前是这样进行的:

func distance(s1in, s2in *C.char) int {
s1 := C.GoString(s1in)
s2 := C.GoString(s2in)

我将如何处理此处的 UTF-8 输入?我看到有一个 UTF-8 包,但我不太明白它是如何工作的。 https://golang.org/pkg/unicode/utf8/

谢谢!

最佳答案

您不需要做任何特别的事情。 UTF-8 是 Go 的“原生”字符编码,因此您可以使用您提到的 utf8 包中的函数,例如utf8.RuneCountInString 获取字符串中 Unicode rune 的数量。请记住,len(s) 仍将返回字符串中的字节数。

参见 this post in the official blogthis article了解一些细节。

关于c - 戈朗 : How to correctly parse UTF-8 string from C,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32870736/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com