| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 486 人关注过本帖
标题:大家看看那里错了,不用指针就对,用了就错了
只看楼主 加入收藏
rvan
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-6-2
结帖率:0
收藏
 问题点数:0 回复次数:8 
大家看看那里错了,不用指针就对,用了就错了
#include<stdio.h>char* stingcat(char s1[],char s2[])
{
 int length=0;
 char *s=NULL;
 char *c=s1;
 for(;*c!='\0';++c,length++);
 c=s2;
 for(;*c!='\0';++c,length++); c = new char[length];
 s=s1;
 int i=0;
 while(*s!='\0')
 {
  c[i++]=*s;
  ++s;
 }
 
 s=s2;
 while(*s!='\0')
 {
  c[i++]=*s;
  ++s;
 } c[i]='\0';
 return c;}int main()
{
 printf("%s",stingcat("abc","defg"));
}
搜索更多相关主题的帖子: return 
2013-06-02 10:32
pauljames
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:千里冰封
威 望:9
帖 子:1555
专家分:10000
注 册:2011-5-8
收藏
得分:0 
读你的代码好艰难

经常不在线不能及时回复短消息,如有c/单片机/运动控制/数据采集等方面的项目难题可加qq1921826084。
2013-06-02 12:45
rvan
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-6-2
收藏
得分:0 
回复 2楼 pauljames
是有些
2013-06-02 15:38
神经不正常
Rank: 2
等 级:论坛游民
帖 子:16
专家分:52
注 册:2013-5-23
收藏
得分:0 
问题好像出在这里,c = new char[length]; new是 c++ 的用法,可能以 .c 编译时通不过。

代码是正确的,如果有问题,把问题的表现说一下。
2013-06-02 19:13
神经不正常
Rank: 2
等 级:论坛游民
帖 子:16
专家分:52
注 册:2013-5-23
收藏
得分:0 
不用指针是什么意思
2013-06-02 19:16
rvan
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-6-2
收藏
得分:0 
回复 5楼 神经不正常
就是用其他的方法
2013-06-02 19:44
rvan
Rank: 1
等 级:新手上路
帖 子:15
专家分:0
注 册:2013-6-2
收藏
得分:0 
回复 4楼 神经不正常
d:\计算机语言软件\526.c(1) : warning C4067: unexpected tokens following preprocessor directive - expected a newline
d:\计算机语言软件\526.c(2) : error C2449: found '{' at file scope (missing function header?)
d:\计算机语言软件\526.c(23) : error C2059: syntax error : '}'
执行 cl.exe 时出错.
2013-06-02 19:45
神经不正常
Rank: 2
等 级:论坛游民
帖 子:16
专家分:52
注 册:2013-5-23
收藏
得分:0 
#include<stdio.h>在这里加个回车char* stingcat(char s1[],char s2[])

return c;}int main()
{
printf("%s",stingcat("abc","defg"));
}在这里必须有一个回车作为结尾。

new 你自己改。
2013-06-02 20:16
猫小喵
Rank: 2
来 自:计算机专业
等 级:论坛游民
帖 子:29
专家分:77
注 册:2013-5-12
收藏
得分:0 
for(;*c!='\0';++c,length++) for(;*c!='\0';++c,length++)这俩for语句不用加 ;还有int i=0;应该在for语句前面声明还有c = new char[length],应该是char * c = new char[length];这是new char[length]的意思是动态定义一个长度为length的字符数组,然而char * c=new char[length]就是把动态定义好的那个数组的首地址给c这个指针变量。


[ 本帖最后由 猫小喵 于 2013-6-2 22:30 编辑 ]

做一个爱编程得女生
2013-06-02 22:22
快速回复:大家看看那里错了,不用指针就对,用了就错了
数据加载中...
 
   



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

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