做网站上传的图片大小,wordpress 用js,四大战略咨询公司,网址大全是什么浏览器目录
一、前言
二、memcpy函数用法
三、代码实现 一、前言 c中想到字符串拼接#xff0c;我们都知道可以用c库中std::string的字符串中的简单加法进行拼接。示例#xff1a;
int main()
{std::string str1 hello;std::string str2 World;std::…目录
一、前言
二、memcpy函数用法
三、代码实现 一、前言 c中想到字符串拼接我们都知道可以用c库中std::string的字符串中的简单加法进行拼接。示例
int main()
{std::string str1 hello;std::string str2 World;std::string str str1 str2;std::cout str str;
} 但如果用字符char声明的原生字符串应该很少人能够想到实现这一功能其实很简单只需要掌握c语言中的memcpy函数就能实现这一功能。
二、memcpy函数用法 在C语言中memcpy是一个库函数用于从源内存块复制指定数量的字节到目标内存块。
memcpy函数的原型如下
void *memcpy(void *dest, const void *src, size_t n);参数说明
dest指向目标内存块的指针即要复制到的位置。src指向源内存块的指针即要从中复制数据的位置。n要复制的字节数。
三、代码实现
int main()
{char str1[0x10]{ 123}; // 初始化字符串大小为16字节值为“123”char str2[0x10]{ 456 }; char str3[0x20]; // 将str1复制给str3memcpy(str3, str1, strlen(str1)); // 将str2复制给str3注意复制的起点指针地址为str的指针加上str1的字节大小memcpy(str3 strlen(str1), str2, strlen(str2) 1);std::cout str3 std::endl;
}注意点
memcpy(str3 strlen(str1), str2, strlen(str2) 1);
1.注意复制的起始位置在将str2复制给str3时注意复制的起点指针地址为str的指针加上str1的字节大小。
2.memcpy的第三个参数为str2的字节长度再1这里很重要必须要加1。 这里的1指的是一个空字符为 \0参考字符串在内存中的存储。字符串在这些语言中是以字符数组的形式存在的并且它们以空字符null character\0其ASCII值为0作为结记。 作用这个空字符用于标识字符串的结束因为C和C中的字符串没有内置的长度信息它们只是简单的字符数组。 如果不1最后打印结果为乱码