应将哪个 Smalltalk 对象传递给需要 const char* 的 C 函数

Which Smalltalk object should be passed to a C function expecting const char*

我想调用以下 C 函数:
int ssh_userauth_password (ssh_session session, const char * username, const char * password)

但是常规的 Smalltalk 字符串不起作用:
library ssh_login: session userAuth: nil password: 'myPwd'.

session 是我已经拥有并且工作正常的指针。
但是 const char * 没有映射到普通字符串。 有没有 class 来映射这个? 我也尝试使用 CPointer 和 asByteArray 但都失败了。

您需要传递一个 CPointer 对象。最简单的方法是通过 'yay' gcCopyCStringToHeap。或者有像 gcCopyUnicodeStringToHeap.

这样的变体