c语言之利用函数实现字符串的复制
1.使用数组下标进行复制
#include<stdio.h>
#include<iostream>
void copy_string(char str1[], char str2[]) {
int i = 0;
while (str1[i] != ‘\0‘) {
str2[i] = str1[i];
i++;
}
str2[i] = ‘\0‘;
}
int main() {
char str1[] = "hello world";
char str2[30];
copy_string(str1, str2);
printf("%s\n",str2);
system("pause");
return 0;
}2.使用指针进行复制
#include<stdio.h>
#include<iostream>
void copy_string2(char* p1, char* p2) {
for (; *p1 != ‘\0‘; *p1++,*p2++)
{
*p2 = *p1;
}
*p2 = ‘\0‘;
}
int main() {
char* str1 = (char*) "hello world";
char str2[] = "i am a student";
copy_string2(str1, str2);
printf("%s\n",str2);
system("pause");
return 0;
}需要注意的是:使用指针进行复制时,str必须这样声明并初始化:char str2[] = "i am a student";,而不能使用char* str2 = (char*) "i am a student";,因为char* str2实际上是一个常量指针,是不允许修改指针指向的值的,所以会报错。
相关推荐
lynjay 2020-06-14
88384957 2020-06-12
zuihaobushi 2020-04-30
xiaohouye 2020-04-20
菇星獨行 2020-04-20
qscool 2020-04-16
Joymine 2020-03-04
CosEmon 2020-03-01
GoatSucker 2020-02-15
Joymine 2020-02-11
twater000 2020-02-01
AaronPlay 2020-06-13
徐建岗网络管理 2020-07-28
ILVNMM 2020-10-26
PinkBean 2020-08-19
Seandba 2020-08-16
herohope 2020-06-10
adwen00 2020-06-09