我想复制C(Windows)中包含空值的字符串。我需要一个函数来传递缓冲区的长度,这样NULL字符就没有意义了。我发现StringCbCopy函数,但它仍然停在第一个NULL字符处。复制内部为空的字符串
0
A
回答
14
由于您知道长度,请使用memcpy()
。
+1
+1正确。既然你没有处理“以null结尾的字符串”,你不应该使用那些期望它们的函数。将“字符串”作为内存缓冲区进行操作。 – tenfour 2011-02-14 17:48:45
0
应该很容易编写自己的功能来做到这一点。如果您知道字符串的长度,只需创建一个具有指定长度的char []或char *,并逐个复制字符。
+1
或者不要,并且使用C89函数 - memcpy。 – 2011-02-14 18:05:13
1
这里是代码的快速比特,可以帮助:
char array1[5] = "test", array2[5];
int length = 5;
memcpy(array2, array1, length*sizeof(char));
//the sizeof() is redundant in this because each char is a byte long
//but it is useful if you are working with other datatypes
的memcpy可能会成为这样的情况下你最好的朋友。
相关问题
- 1. 我可以复制空字符串中的字符串吗?
- 2. PHP传递字符串内部空间
- 3. 字符串内部的Java字符串
- 4. php5从字符串复制子字符串由空格分隔?
- 5. 使用Clipboard.SetText复制空字符串(字符串)
- 6. c字符串复制无法清空字符串
- 7. 从字符串复制空白字符串在Python
- 8. 如何复制部分字符串? C++
- 9. Java字符串[]部分复制
- 10. 如何将非空字符串复制到动态内存
- 11. 字符串内部结构的行为
- 12. 将字符串内部的char字符串转换为lowerCase/upperCase
- 13. GSON反序列化字符串[]为一个字符串内部的字符串
- 14. 串联字符串复制()
- 15. 字符串内部的Java字符串到字符串
- 16. Excel复制字符间字符串的一部分
- 17. 在一个字符串复制一个字符,留下一个空字符串
- 18. 字符串为空
- 19. 字符串为空
- 20. 复制字符串中的字符
- 21. 字符串内的字符串内部的变量
- 22. JSON空字符串为空
- 23. 字符串为空或空
- 24. 定制JsonConverter可以decimal.MinValue转换为空字符串和背部
- 25. 因为SQL字符串而复制值?
- 26. 将字符串的一部分复制到另一个C#中的字符串
- 27. 如何复制另一个字符串中的字符串的部分?
- 28. 的strcmp为空字符串
- 29. 如何生成仅用于复制内部字符串的输入字段?
- 30. 将字符串从字符串复制到字符串
通过字符串的定义,它由NUL分隔,除了终止符外,没有NUL。 – user611775 2011-02-14 22:21:37