搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 自己写的字符串拷贝函数输出老不对
标题:
自己写的字符串拷贝函数输出老不对
只看楼主
原味C
等 级:
论坛游民
帖 子:16
专家分:27
注 册:2014-9-8
第
11
楼
得分:0
刚刚定义了个全局的数组,现在可以了,哎老是被这样的问题绊住,弄 那个OC的对象也是这样没怎么想那个作用域。谢谢斑竹的教导,嘿嘿
2014-09-08 22:24
原味C
等 级:
论坛游民
帖 子:16
专家分:27
注 册:2014-9-8
第
12
楼
得分:0
回复 10 楼 TonyDeng
刚刚定义了个全局的数组,现在可以了,哎老是被这样的问题绊住,弄 那个OC的对象也是这样没怎么想那个作用域。谢谢斑竹的教导,嘿嘿
2014-09-08 22:26
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
13
楼
得分:0
你现在虽然知道了这个问题的原因,也算是解决了,但我还是要你说:你这个函数的设计是不适当的。
授人以渔,不授人以鱼。
2014-09-08 22:27
原味C
等 级:
论坛游民
帖 子:16
专家分:27
注 册:2014-9-8
第
14
楼
得分:0
回复 13 楼 TonyDeng
是char strd[100];分配的内存太死了,不够灵活?
2014-09-08 22:29
随风而行lulu
等 级:
论坛游民
帖 子:59
专家分:60
注 册:2014-9-6
第
15
楼
得分:0
*ps = s
(13) : error C2440: 'initializing' : cannot convert from 'const char *' to 'char *'
2014-09-08 22:31
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
16
楼
得分:0
以下是引用
原味C
在2014-9-8 22:29:56的发言:
是char strd[100];分配的内存太死了,不够灵活?
不是。你看看标准库函数strcpy()的原型是怎样的,跟你的有什么区别,想一想人家为什么是这样。不要动不动就用全局变量,何况按这个功能的函数来说,你这个原型也是语义不清,既然是copy,从哪复制到哪?从函数的声明看不出来,那就是不适当的设计。
授人以渔,不授人以鱼。
2014-09-08 22:33
随风而行lulu
等 级:
论坛游民
帖 子:59
专家分:60
注 册:2014-9-6
第
17
楼
得分:0
以下是引用
TonyDeng
在2014-9-8 22:14:38的发言:
这种经典错误,你希望我怎么说你?你return的是什么,然后看看书有没有告诫过这种return有什么问题。现在直接告诉你没用的,不会印象深刻的,永远也学不会该怎么读书。最重要的是学会怎么学习,不是知道答案。
学习了。我看的谭大爷的书,没怎么注意这种问题。
2014-09-08 22:36
随风而行lulu
等 级:
论坛游民
帖 子:59
专家分:60
注 册:2014-9-6
第
18
楼
得分:0
回复 14 楼 原味 C
请教应该怎么做?
2014-09-08 22:37
原味C
等 级:
论坛游民
帖 子:16
专家分:27
注 册:2014-9-8
第
19
楼
得分:0
回复 16 楼 TonyDeng
嗯,标准库差不多是这样定义的 void *strCopy(char *dst,const char *src)。我已经知道差别了。斑竹肯定是大牛啊,另外中秋快乐啊,这么晚了还在帮助我这个菜鸟
2014-09-08 22:40
随风而行lulu
等 级:
论坛游民
帖 子:59
专家分:60
注 册:2014-9-6
第
20
楼
得分:0
以下是引用
TonyDeng
在2014-9-8 22:33:37的发言:
不是。你看看标准库函数strcpy()的原型是怎样的,跟你的有什么区别,想一想人家为什么是这样。不要动不动就用全局变量,何况按这个功能的函数来说,你这个原型也是语义不清,既然是copy,从哪复制到哪?从函数的声明看不出来,那就是不适当的设计。
学习了,函数名和参数应该顾名思义
2014-09-08 22:40
30
2/3页
1
2
3
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-435853-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.108668 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved