Addins for Excel(xll)使用字符串,其中第一个字符是字符串的长度,并且没有空终止。
目前我使用的结构包含一个wchar_t数组,其长度等于excel字符串的长度+ 1。我将excel字符串(包括长度字符串)复制到数组[0]中,并在数组末尾放置一个'\ 0'。这样我就可以将它作为excel字符串和cstring
来处理我宁愿直接处理这些字符串,而不是复制它们。 我需要的功能是基本的字符串函数; strlen,cmp,trim,substr,replace等。找了一个库位r找不到任何。
有没有标准的方法来做到这一点?
答案 0 :(得分:0)
您可以尝试定义此类结构:
typedef struct _VarLengthStr
{
unsigned int length;
unsigned char string[1];
} VarLengthStr, *PVarLengthStr;
您可能需要不同类型的长度。您还需要使用new
或malloc
您也可以使用strnlen_s
等安全功能代替strlen
等等。