当前位置: 首页 > news >正文

中国建设银行网站口手机网站在后台怎么做编辑

中国建设银行网站口,手机网站在后台怎么做编辑,网站seo技术教程,设计制作费用计入什么会计科目文章目录 1. memcpy函数1.1使用规则1.2memcpy函数的模拟实现 2.memmove函数2.1使用规则2.2memmove函数的模拟实现 3.memset函数4.memcmp函数 1. memcpy函数 1.1使用规则 void *memcpy ( void *destination, const void *source, size_t num );将source指向的源内存区域中指定…

文章目录

  • 1. memcpy函数
    • 1.1使用规则
    • 1.2memcpy函数的模拟实现
  • 2.memmove函数
    • 2.1使用规则
    • 2.2memmove函数的模拟实现
  • 3.memset函数
  • 4.memcmp函数

1. memcpy函数

1.1使用规则

void *memcpy ( void *destination, const void *source, size_t num );
  • 将source指向的源内存区域中指定字节数(num)的数据复制到destination指向的目标内存区域
  • 遇 ‘\0’ 不会停下
  • 源内存区域和目标内存区域有重叠可能产生未定义行为
    • 当源内存区域和目标内存区域有重叠时,建议使用 memmove 函数,它可以正确处理内存重叠的情况
#include <stdio.h>
#include <string.h>
int main()
{int arr1[] = { 1,2,3,4,5,6,7,8,9,10 };int arr2[10] = { 0 };memcpy(arr2, arr1, 20);// int 类型通常占 4 个字节,所以 20 字节相当于 5 个 int 元素// 因此这里将 arr1 的前 5 个元素复制到 arr2 的前 5 个位置int i = 0;for (i = 0; i < 10; i++){printf("%d ", arr2[i]);}return 0;
}

在这里插入图片描述

1.2memcpy函数的模拟实现

#include <stdio.h>
#include <assert.h>// 参数 dst 是目标内存区域的起始地址
// 参数 src 是源内存区域的起始地址
// 参数 count 是要复制的字节数
void* memcpy(void* dst, const void* src, size_t count)
{void* ret = dst;assert(dst);assert(src);/* 从低地址向高地址复制数据 */while (count--) {*(char*)dst = *(char*)src;dst = (char*)dst + 1;src = (char*)src + 1;}return(ret);
}int main() 
{int arr1[] = { 1, 2, 3, 4, 5 };int arr2[5];memcpy(arr2, arr1, sizeof(arr1));for (int i = 0; i < 5; i++) {printf("%d ", arr2[i]);}printf("\n");return 0;
}

在这里插入图片描述

2.memmove函数

2.1使用规则

当源内存区域和目标内存区域有重叠时,建议使用 memmove 函数

void *memmove ( void *destination, const void *source, size_t num );
#include <stdio.h>
#include <string.h>int main()
{int arr1[] = { 1,2,3,4,5,6,7,8,9,10 };memmove(arr1 + 2, arr1, 20);// arr1 的前 5 个元素复制到 arr1 的第 3 个位置开始往后的 5 个位置int i = 0;for (i = 0; i < 10; i++){printf("%d ", arr1[i]);}return 0;
}

在这里插入图片描述

2.2memmove函数的模拟实现

#include <stdio.h>
#include <assert.h>void* memmove(void* dst, const void* src, size_t count)
{void* ret = dst;assert(dst != NULL);assert(src != NULL);// 情况一:目标内存区域在源内存区域之前,或者目标内存区域在源内存区域之后且不重叠if (dst <= src || (char*)dst >= ((char*)src + count)) {/* 从低地址向高地址复制数据 */while (count--) {*(char*)dst = *(char*)src;dst = (char*)dst + 1;src = (char*)src + 1;}}// 情况二:目标内存区域和源内存区域存在重叠,且目标内存区域在源内存区域之后else {/* 从高地址向低地址复制数据 */// 将目标内存地址移动到要复制的最后一个字节的位置dst = (char*)dst + count - 1;// 将源内存地址移动到要复制的最后一个字节的位置src = (char*)src + count - 1;while (count--) {*(char*)dst = *(char*)src;dst = (char*)dst - 1;src = (char*)src - 1;}}return(ret);
}int main() 
{int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };memmove(arr + 2, arr, 20);for (int i = 0; i < 10; i++) {printf("%d ", arr[i]);}printf("\n");return 0;
}

3.memset函数

memset 函数用于将指定内存区域的前若干个字节设置为指定的值,常用于初始化内存或清空内存。

void *memset ( void *ptr, int value, size_t num );
#include <stdio.h>
#include <string.h>int main()
{char str[] = "hello world";memset(str, 'x', 6);   // 将str数组的前 6 个字节填充为字符 'x'printf("%s", str);return 0;
}

在这里插入图片描述

4.memcmp函数

int memcmp ( const void *ptr1, const void *ptr2, size_t num );
  • 比较ptr1和ptr2指针指向的位置开始,向后的num个字节
  • 根据比较结果返回小于、等于或大于 0 的整数,以此判断两个内存区域内容的大小关系
  • 直到比较完 num 个字节或发现不同
#include <stdio.h>
#include <string.h>int main()
{char buffer1[] = "DWgaOtP12df0";char buffer2[] = "DWGAOTP12DF0";int n;n = memcmp(buffer1, buffer2, sizeof(buffer1));if (n > 0)printf("'%s' is greater than '%s'.\n", buffer1, buffer2);else if (n < 0)printf("'%s' is less than '%s'.\n", buffer1, buffer2);elseprintf("'%s' is the same as '%s'.\n", buffer1, buffer2);return 0;
}

在这里插入图片描述

http://www.dtcms.com/a/439685.html

相关文章:

  • 口碑好的扬中网站建设预备网络推广方案
  • 怎么区分网站是模板做的frontpage slideshow wordpress
  • 南京本地网站网站单页在线制作软件
  • 影视网站seo描述做网站运营要了解哪些
  • 宜春网站制作佛山市招投标交易中心
  • 深圳网站营销型建设建设网站有哪些目的是什么意思
  • 自主实——动态 IP 黑名单过滤
  • 出版社网站建设石家庄模板建站代理
  • 网站如何做服务器授权苏州微网站建设
  • springboot+vue教务管理系统(源码+文档+调试+基础修改+答疑)
  • 网络安全基础--第七课:SQL注入
  • 做低价的跨境电商网站班级网站建设图片
  • USCAR-38解读
  • 监控视频分析侦查系统
  • 个人网站建设免费分析加强门户网站建设方案
  • 国外怎么做推广网站三网合一网站
  • 广西建设工会网站install wordpress
  • 网站后台功能模块设计广州电子软件开发
  • 网页游戏网站开发wordpress头像网站
  • Windows程序字符串处理与逆向分析
  • 网站收录下降注册传媒公司需要的条件
  • Embarcadero Dev-C++ 6.3 中文乱码问题
  • 归并排序巧解计算数组的小和问题
  • 三六五网做网站吗网页设计规范字体
  • 做网站需要了解的东西营销网站的建立
  • iBizModel 树视图(PSDETREEVIEW)模型体系详解
  • 科普重庆网站新余建站公司
  • 扬中网站推广导流自助网站
  • 生物信息中的FPKM counts TPM是什么意思 名词解释
  • 广州网站改版 网站建设宁波专业外贸网站建设