传智播客视频学习 ---->>>> 字符串copy函数实现(C语言)
字符串copy函数实现:
在C语言中使用指针实现
要先为参数分配内存
代码:
#ifndef _CODE_STRING_COPY_H_ #define _CODE_STRING_COPY_H_ #include <stdio.h> // 这个函数的意义:在主调函数中分配内存,供被调函数使用 void strCopyGood(char *from, char *to){ // 在函数体中,定义临时变量,防止直接操作形参 char *tempFrom = from; char *tempTo = to; if (from == NULL || to == NULL){ // 防止在主调函数中没有分配内存 return; } while (*tempTo++ = *tempFrom++); // copy // 定义临时变量的作用 printf("strCopyGood from = %s \n", from); } int main() { char *buf1 = "abcd"; // 要copy的数据,指针类型 char buf2[100]; // 接受copy的数据,数组(指针) printf("main from = %s \n", buf2); // 只分配了内存,却没有给其赋值 strCopyGood(buf1, buf2); // 调用这个函数要先个参数分配内存 printf("main from = %s \n", buf2); // 将buf1的内容copy到buf2中了 return 0; } #endif _CODE_STRING_COPY_H_
结果: