码迷,mamicode.com
首页 > 编程语言 > 详细

c语言之利用函数实现字符串的复制

时间:2019-12-30 21:35:48      阅读:70      评论:0      收藏:0      [点我收藏+]

标签:实现   std   system   copy   div   main   使用   str1   必须   

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实际上是一个常量指针,是不允许修改指针指向的值的,所以会报错。

c语言之利用函数实现字符串的复制

标签:实现   std   system   copy   div   main   使用   str1   必须   

原文地址:https://www.cnblogs.com/xiximayou/p/12121475.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!