toKStringFromUtf8
the kotlin.String decoded from given zero-terminated UTF-8-encoded C string.
fun CPointer<ByteVar>.toKStringFromUtf8(): String(source)
import kotlinx.cinterop.*
import platform.posix.free
import platform.posix.strdup
fun main() = memScoped {
// Obtain a C string pointer (UTF‑8 encoded, zero‑terminated)
val cStr: CPointer<ByteVar> = strdup("Hello, C string!")!!
// Convert the C string to a Kotlin String
val kotlinString = cStr.toKStringFromUtf8()
println(kotlinString) // prints: Hello, C string!
// Clean up the allocated C string
free(cStr)
}