标题:新手求解(关于字符复制)
只看楼主
timmy
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-2-25
 问题点数:0 回复次数:7 
新手求解(关于字符复制)
写了个复制字符的函数,帮忙看下~
#include<iostream>
using namespace std;
int  str_cpy(char *str1,const char *str2)
{
    int i=0;
    for(;str2[i]!='\0';i++)
    str1[i]=str2[i];
    str1[i]='\0';
    return 0;
}
int main()
{
    char *str2="fkljdsklfk";
    char *str1=new char[20];
    str_cpy(str1,str2);
    cout<<str1<<endl;
    system("pause");
    return 0;
}

#include<iostream>
using namespace std;
void  str_cpy(char *str1,char *str2)
{
    str1=str2;
}
int main()
{
    char *str2="fkljdsklfk";
    char *str1=new char[20];
    str_cpy(str1,str2);
    cout<<str1[2]<<endl;
    system("pause");
    return 0;
}
到底有什么区别,怎么我第一个函数可以复制,而第二个却不行,输出了个>
搜索更多相关主题的帖子: 字符 求解 
2005-03-15 20:45
poppylx
Rank: 1
等 级:新手上路
帖 子:367
专家分:0
注 册:2004-9-27
得分:0 
如果第二种可以那还要你自己写什么函数
那strcpy也可以扔回收站了

动于心而静如水
2005-03-15 20:54
timmy
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-2-25
得分:0 
呵呵~
那你给我解释下呀
我弄不懂
2005-03-17 11:34
wj_____b
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-2-5
得分:0 
str1是指针做值参,修改不起作用
2005-03-17 16:04
poppylx
Rank: 1
等 级:新手上路
帖 子:367
专家分:0
注 册:2004-9-27
得分:0 
指针做参数修改不起作用???????
不对吧

动于心而静如水
2005-03-17 21:06
zinking
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:35
帖 子:916
专家分:0
注 册:2004-12-5
得分:0 
不是阿,你把str2的地址给了str1指针。并没有完成复制的全过程。所以用str1[2]输出的只是随机的冬冬,str1只有str2头的地址,其他什么都没有

http://kongfuziandlife. http://codeanddesign.
2005-03-18 13:43
timmy
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2005-2-25
得分:0 
既然str2把地址给了str1
那么str1+2不就是跟str2+2的地址一样了,不懂。。
2005-03-18 18:43
bouluo505
Rank: 1
等 级:新手上路
帖 子:18
专家分:0
注 册:2004-12-25
得分:0 
第二中肯定不行了,如果行的华的在C中字符串就可以随便赋了!只有使用C++中的string类,才提供以字符串整体赋值!!

好好学习,\"歼\"死小日本……
2005-03-19 10:16



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-13378-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.099011 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved