今天在学习C语言时遇到的问题,指针引用字符数组,实现字符串复制的几个方法。且看我细细道来,废话不多说,先上代码。(不用全看,只看CopyStr4方法和主函数就可)
#include <stdio.h>
void CopyStr1(char * to,char * from);
void CopyStr2(char* to, char* from);
void CopyStr3(char* to, char* from);
void CopyStr4(char* to, char* from);
void CopyStr5(char* to, char* from);
void main() {
char a[20], * pa = a;
char* pb = "hello";
CopyStr4(pa,pb);
printf("string a is:%s\n",pa);
}
void CopyStr1(char* to, char* from) {
for (; *from != '\0';to++,from++) {
/*from字符数组中未遇到空字符就复制到to*/
*to = *from;
}
*to = '\0';
/*to字符数组末尾加字符串结束标志--空字符'\0' */
}
void CopyStr2(char* to, char* from) {
while (*from!='\0') {
*to++ = *from++;
/*将自加运算放在赋值表达式,先运算再自加 (二者都是)*/
}
*to = '\0';
}
void CopyStr