0

我有接收 NPVariant* 的 NPAPI 插件方法,我需要将其转换为 char*,我听说 NPVariant 不以 NULL 字符结尾,所以在处理参数之前我需要将其转换为 char* ,谁能告诉我如何转换它到char *?

提前致谢...

4

1 回答 1

2

NPVariant 有一个typeand value,值有一个stringValue包含指针 UTF8Characters 和 UTF8Length 的值,所以它也告诉你长度。

例如:

NPVariant yourVariant; //Pretend this is initialized
if (yourVariant.type == NPVariantType_String) {
    const NPUTF8* characters = yourVariant.value.stringValue.UTF8Characters;
    int length = yourVariant.value.stringValue.UTF8Length;
}

UTF8Characters 是一个 NPUTF8,它可能是一个 char 的 typedef。

知道长度后,您可以构建自己的以 null 结尾的 char*。

于 2013-02-11T14:59:54.363 回答