标题:char *s=&src[len-1];为什么编译会出语法错误
只看楼主
wooginluers
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-10-10
 问题点数:0 回复次数:3 
char *s=&src[len-1];为什么编译会出语法错误
#include "stdio.h"
#include "string.h"
main(void)
{
char *src="hello,world";
char *dest=NULL;
char *d;
int len=strlen(src);
dest=(char*)malloc(len+1);
d=dest;
char *s=&src[len-1];/* ???为什么会有语法错误*/
while(len--!=0)
*d++=*s--;
*d = 0;//β²¿Òª¼Ó\0
printf("%s\n",dest);
free(dest);// ʹÓÃÍ꣬Ӧµ±Êͷſռ䣬ÒÔÃâÔì³ÉÄÚ´æ»ãй¶
return 0;
}
搜索更多相关主题的帖子: 语法错误 char dest 
2007-10-11 17:04
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
得分:0 
C语言里面,变量定义要在执行语句前面,char *s=&src[len-1];这句在两个执行语句后定义了s,所以出现错误。建议分开来,把char *s;放到前面,这里再写s=%$#^%

努力成为菜鸟!
2007-10-11 17:08
mixmouse
Rank: 1
等 级:新手上路
帖 子:22
专家分:0
注 册:2007-10-8
得分:0 
“hello,world”是不可以改变的,
char *s=&src[len-1];可能会改变“hello,world”

2007-10-11 17:11
wooginluers
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2007-10-10
得分:0 

谢谢2楼的哥们,正如你所说,问题已解决。令我不解的是。我贴上来的是某题的标准答案,质量竟然这么差。

2007-10-11 17:15



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




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

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