我有接收 NPVariant* 的 NPAPI 插件方法,我需要将其转换为 char*,我听说 NPVariant 不以 NULL 字符结尾,所以在处理参数之前我需要将其转换为 char* ,谁能告诉我如何转换它到char *?
提前致谢...
我有接收 NPVariant* 的 NPAPI 插件方法,我需要将其转换为 char*,我听说 NPVariant 不以 NULL 字符结尾,所以在处理参数之前我需要将其转换为 char* ,谁能告诉我如何转换它到char *?
提前致谢...
NPVariant 有一个type
and 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*。