1、sizeof()和strlen()的区别
strlen指字符的长度 sizeof指文件或者数据占的内存(字节)
例:
char str[20]="0123456789";
int a=strlen(str); //a=10;
int b=sizeof(str); //b=20;
int b=sizeof(str); //b=20;
2、snprintf函数用法
int snprintf(char *buff, size_t n, const char * format, ...);
函数说明:将可变个参数(...)按照format格式化成字符串,然后将其复制到buff中,最多从(...)中拷贝n-1个字符到目标串中,然后再在后面加一个0。所以如果目标串的大小为n 的话,将不会溢出。
函数返回值:若成功则返回欲写入的字符串长度,若出错则返回负值
例:
snprintf(s,100,"%.*S",3,"abcd");
s的值为abc, %.*s 表示有两项, 第一项指定了长度,第二项则是%s的内容,所以取前三位
3.memcpy函数用法
void *memcpy(void *dest, const void *src, size_t n);
函数说明:从源 src 所指的内存地址的起始位置开始拷贝n个字节到目标 dest 所指的内存地址的起始位置中
扫描二维码关注公众号,回复:
3399622 查看本文章
4.memcmp函数用法
int memcmp(const void *buf1, const void *buf2, unsigned int count);
函数说明:比较内存区域buf1和buf2的前count个字节。
函数返回值:当buf1<buf2时,返回值小于0
当buf1==buf2时,返回值=0
当buf1>buf2时,返回值大于0