小编在此做下记录C语言库函数的复制函数
头文件:#include <string.h>
函数原型:
char *strcpy(char *str1, const char *str2) { 把 str2 所指向的字符串复制到 str1。}
char *strncpy(char *str1, const char *str2, size_t n) {把 str2 所指向的字符串复制到 str1,最多复制 n 个字符}
void *memset(void *str1, int c, size_t n) { 复制字符 c(一个无符号字符)到参数 str1字符串的前 n 个字符}
用法函数1:
strcpy(str1, "123456789"); //复制str1所有字符串到str2中
printf("strcpy函数: %s\n", str1);
输出:strcpy函数: 123456789
用法函数2:
strcpy(str1, "123456789");
strncpy(str2, str1, 6); //复制str1字符串的前6个字符到str2中
printf("strcpy函数: %s\n", str2);
输出:strncpy函数: 123456
用法函数3:字符串摘取方法
char imei[20]; //IMEI存放数组
char uart_buff[]; //串口缓存数组
//例如uart_buff数组是:+CGSN:356566071234561
//下面的功能从uart_buff数组的第六位开始,复制后面15个数据到imei数组中
strncpy((char*)(imei), (char*)(&uart_buff[6]), 15);
printf("%s\r\n",imei);
输出: 356566071234561
用法函数4:数组全部赋值零
//char buffer[256] //数组
memset(buffer, 0, 256) ;
输出: buffer[0...255] 全部数据为 0