memset 和 memcpy 和 memcmp (strncmp遇到\0会中断)
2018-01-11 16:07
344 查看
int main() { int a; //memset的作用用于给一段内存清0 memset(&a, 0, sizeof(a)); // 0000 0001 0000 0001 0000 0001 0000 0001 memset(&a, 1, sizeof(a)); //给每一个字节设置指定的数 printf("a = %d\n", a); int b[100]; memset(&b[0], 0, sizeof(b)); return 0; }
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <string.h> #include <stdlib.h> int a = 0; int b = 0; void func() { } int main() { char src[] = "hello\0abc"; char dst[100] = {0}; strncpy(dst, src, sizeof(src)); memcpy(dst, src, sizeof(src)); printf("dst = %s\n", dst);//hello printf("dst = %s\n", dst+strlen("hello")+1);//abc int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int b[10]; memset(b, 1, sizeof(b)); memset(b, 0, sizeof(b)); //memcpy(b, a, 10*sizeof(int)); memcpy(b, a, sizeof(a)); //最后一个参数为拷贝内存的字节大小,不是元素个数 int i = 0; for (i = 0; i < 10; ++i) { printf("%d, ", b[i]); } printf("\n"); getchar(); return 0; }
//memcmp是比较内存区域buf1和buf2的前count个字节。该函数是按字节比较的。 char p1[] = "hello\0abc"; char p2[] = "hello\0tea"; //int flag = strncmp(p1, p2, sizeof(p1));//0 遇到\0中断 int flag = memcmp(p1, p2, sizeof(p1)); //-1 printf("flag = %d\n", flag);
相关文章推荐
- 内存操作函数memcpy,memccpy,memmove,memchr,memcmp,memicmp,memset
- 自己实现的库函数(memset,memcmp,memcpy,memmove)
- Android 使用NDK开发中,遇到memset,memcpy, malloc函数错误
- 用c语言实现strncmp,strncat,memset, memcmp
- c++下memcpy()、memset()、memcmp()需要注意的
- memccpy,memmove,memcpy,memset ,menchr,memcmp,memicmp使用
- C操作内存函数(memset,memcpy,memcmp)
- 内存操作函数memcpy,memccpy,memmove,memchr,memcmp,memicmp,memset
- 内存操作函数(memcpy、memmove、memcmp、memchr、memset)
- memcpy、memmove、memset、memchr、memcmp、strstr详解
- memset()、memcpy()、memcmp()的使用方法
- 走进C标准库(7)——"string.h"中函数的实现memcmp,memcpy,memmove,memset
- c标准库源代码之 memcpy/memcmp/memset
- bcopy和memcpy、bzero和memset、bcmp和memcmp的差别
- 【转】Android 使用NDK开发中,遇到memset,memcpy, malloc函数错误
- memcmp,memcpy,memmove,memset,strcat,strcmp,strcpy,strlen 8个函数的实现
- 自己实现内存操作函数memset(),memcmp(),memcpy(),memmove()
- strcpy,strcmp,strcat,memcpy,memmov,memset,memcmp的实现
- 用c语言实现strncmp,strncat,memset, memcmp
- C-基础:memcpy、memset、memmove、memcmp、memchr