24小时热门版块排行榜    

查看: 4183  |  回复: 10

zxx921212

铁杆木虫 (正式写手)

[求助] C++新手,现要实现字符串的复制,不允许用strcpy()函数,需要如何编写,急求!! 已有2人参与

C++新手,现要实现字符串的复制,不允许用strcpy()函数,需要如何编写,急求!!
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

每天一点小精彩
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baobiao007

木虫 (职业作家)

中国特色

指针 加 字符数组  轻松搞定
我同意叔本华的观点,人们投身艺术和科学领域的强烈愿望之一就是逃离痛苦、残酷和枯燥无味的现实生活,逃离自己飘忽不定的七情六欲的桎梏。--爱因斯坦
2楼2014-07-07 12:02:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zxx921212

铁杆木虫 (正式写手)

引用回帖:
2楼: Originally posted by baobiao007 at 2014-07-07 12:02:39
指针 加 字符数组  轻松搞定

可以具体说下嘛?

[ 发自小木虫客户端 ]
每天一点小精彩
3楼2014-07-07 14:21:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

cooooldog

铁杆木虫 (著名写手)

ส็็็

【答案】应助回帖

★ ★
感谢参与,应助指数 +1
zxx921212: 金币+2, 有帮助 2014-07-07 20:09:44
引用回帖:
3楼: Originally posted by zxx921212 at 2014-07-07 14:21:45
可以具体说下嘛?
...

可以用
#include <iterator>
using namespace stdext;
里面的
stdext 类里面定义的字符串操作函数来实现

一个现成的例子是
CODE:
        std::string creationStr ="xxxxxxxx";
                char * nCreationStr = new char[creationStr.size() + 1];
                stdext::checked_array_iterator<char *> chkd_test_array(nCreationStr, creationStr.size() + 1);
                std::copy(creationStr.begin(), creationStr.end(), chkd_test_array);// nCreationStr);
                nCreationStr[creationStr.size()] = '\0';

ส็็็็็็็็็็็็็็็็็็็็
4楼2014-07-07 18:14:38
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

绿遍山原

铜虫 (小有名气)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
zxx921212: 金币+2, ★★★很有帮助 2014-07-07 20:08:58
zxx921212: 金币+1, ★★★很有帮助 2014-07-07 21:33:18
strcpy实现很简单啊,K&R的书里面就有。
void mycopy(char *str, char *des)
{
    while ((*des) = (*str++)) des++;
}
要夢遊,不要催眠。
5楼2014-07-07 19:05:15
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

绿遍山原

铜虫 (小有名气)

引用回帖:
5楼: Originally posted by 绿遍山原 at 2014-07-07 19:05:15
strcpy实现很简单啊,K&R的书里面就有。
void mycopy(char *str, char *des)
{
    while ((*des) = (*str++)) des++;
}

有个bug
最好写成这样:
void mycopy(char *str, char *des)
{
    if (str == des) return;
    while ((*des++ = *str++));
}
要夢遊,不要催眠。
6楼2014-07-07 19:17:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zxx921212

铁杆木虫 (正式写手)

引用回帖:
6楼: Originally posted by 绿遍山原 at 2014-07-07 19:17:39
有个bug
最好写成这样:
void mycopy(char *str, char *des)
{
    if (str == des) return;
    while ((*des++ = *str++));
}...

要是不用指针能做吗?

[ 发自小木虫客户端 ]
每天一点小精彩
7楼2014-07-07 20:09:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zxx921212

铁杆木虫 (正式写手)

引用回帖:
4楼: Originally posted by cooooldog at 2014-07-07 18:14:38
可以用
#include <iterator>
using namespace stdext;
里面的
stdext 类里面定义的字符串操作函数来实现

一个现成的例子是

        std::string creationStr ="xxxxxxxx";
                char * nCreation ...

其实吧没怎么看明白,对C++知道的甚少,还是谢谢啦

[ 发自小木虫客户端 ]
每天一点小精彩
8楼2014-07-07 20:12:28
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

绿遍山原

铜虫 (小有名气)

引用回帖:
7楼: Originally posted by zxx921212 at 2014-07-07 20:09:25
要是不用指针能做吗?
...

c的字符串就是指针,不用是不可能的。
你这样学C根本没实际意义,哪怕你能背下C语言标准,它也不会让你能写个排序或者解个方程。
要夢遊,不要催眠。
9楼2014-07-07 20:47:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

zxx921212

铁杆木虫 (正式写手)

引用回帖:
9楼: Originally posted by 绿遍山原 at 2014-07-07 20:47:40
c的字符串就是指针,不用是不可能的。
你这样学C根本没实际意义,哪怕你能背下C语言标准,它也不会让你能写个排序或者解个方程。...

(⊙o⊙)…呃……看来是对这个真不通,

[ 发自小木虫客户端 ]
每天一点小精彩
10楼2014-07-07 21:32:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zxx921212 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 333求调剂 +3 文思客 2026-03-16 7/350 2026-03-16 18:21 by 文思客
[考研] 本人考085602 化学工程 专硕 +12 不知道叫什么! 2026-03-15 14/700 2026-03-16 16:45 by 我的船我的海
[考研] 0703化学调剂 +6 妮妮ninicgb 2026-03-15 9/450 2026-03-16 16:40 by houyaoxu
[考研] 283求调剂 +10 小楼。 2026-03-12 14/700 2026-03-16 16:08 by 13811244083
[考研] 材料与化工专硕调剂 +3 heming3743 2026-03-16 3/150 2026-03-16 15:05 by peike
[硕博家园] 深圳大学硕士招生(2026秋,传感器方向,仅录取第一志愿) +4 xujiaoszu 2026-03-11 8/400 2026-03-16 09:45 by xujiaoszu
[考研] 326求调剂 +4 上岸的小葡 2026-03-15 5/250 2026-03-16 08:39 by Linda Hu
[考研] 复试调剂 +3 呼呼?~+123456 2026-03-14 3/150 2026-03-14 16:53 by WTUChen
[考研] 一志愿安徽大学材料工程专硕313分,求调剂的学校 +8 Yu先生 2026-03-10 10/500 2026-03-14 01:04 by JourneyLucky
[考研] 307求调剂 +7 超级伊昂大王 2026-03-10 7/350 2026-03-14 00:49 by JourneyLucky
[考研] 材料工程专硕,一志愿中国矿业大学,总分314,求调剂 +5 无懈可击的巨人 2026-03-10 5/250 2026-03-14 00:37 by JourneyLucky
[考研] 一志愿湖师大化学289求调剂 +6 XMCMM3.14159 2026-03-10 6/300 2026-03-14 00:28 by JourneyLucky
[考研] 求调剂(材料与化工327) +4 爱吃香菜啦 2026-03-11 4/200 2026-03-13 22:11 by JourneyLucky
[考研] 329求调剂 +3 miaodesi 2026-03-12 4/200 2026-03-13 20:53 by 18595523086
[考研] 26调剂/材料科学与工程/总分295/求收留 +9 2026调剂侠 2026-03-12 9/450 2026-03-13 20:46 by 18595523086
[考研] 一志愿211化学学硕310分求调剂 +8 努力奋斗112 2026-03-12 9/450 2026-03-13 15:41 by JourneyLucky
[考研] 26考研求调剂 +5 丶宏Sir 2026-03-13 5/250 2026-03-13 13:05 by JourneyLucky
[考研] 274求调剂0856材料化工 +12 z2839474511 2026-03-11 13/650 2026-03-13 10:39 by peike
[考研] 0857环境调剂 +5 熠熠_11 2026-03-10 5/250 2026-03-11 10:59 by wang_dand
[考研] 298求调剂 +3 Vv呀! 2026-03-10 3/150 2026-03-10 22:40 by 剑诗杜康
信息提示
请填处理意见