c - memcpy一个子串

标签 c substring memcpy

我想尝试 C memcpy 函数。我有这个代码:

char destination[40];
memcpy(destination, "My favorite destination is...", 11);
printf(destination);

我想将前11个字母复制到目标数组。当我使用printf时,结果是“我的收藏夹2”。为什么?

最佳答案

您会在11个字符的末尾缺少NULL终止符-> Printf只会打印内存中该部分的内容,直到找到NULL终止符为止。

只需添加目的地[11] = 0;

那应该工作:)

关于c - memcpy一个子串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8273919/

相关文章:

python - 通过 Python 中的 c 函数传递和返回 double 组

计算仅包含元音的子串的数量

c++ - 在整个 union 上使用 std::memcpy 是否保证保留事件的 union 成员?

c - memcpy 问题(内部结构)

python - 不切割单词的最长公共(public)子串- python

c++ - 关于使用 memcpy 将表达式值复制到指针的查询

c - C 语言的蛙跳游戏

c - PADDD 指令的操作数

c - 怎么答案是36?

java - 使用列表声明数组