API函数的字符串字串缓冲区为什么要应事先初始化成字符串的长度+1,搞不懂为什么要+1
例如这个API
GetSystemDirectory
按我的理解,那个字符串缓冲区只初始化为实际长度大小就可以了,为什么还要+1?难道字符串最后还加了
一个字符的其它东西吗?
[解决办法]
本帖最后由 dkfdtf 于 2014-01-21 12:38:41 编辑 因为 c 语言要用一个 ascii 0 来标识字符串的结束
这样看:
cc = ''你可以看到,尾部多个一个 chr(0)
nn = GetSystemDirectory(@cc, 0)
cc = Space(nn)
GetSystemDirectory(@cc, nn)
? nn, cc