第九章实例7,为什么代码输入visual c++,执行的时候,输入空格键,的时候就像是\0,没有执行空格缩减
发表在C语言图书答疑 2018-12-07 悬赏:5 学分 《零基础学C语言》第9章 函数 203页-204页
是否精华
版块置顶:

#include<stdio.h>

void allitrim(char *str)

{

char *p=str;

while(*p!=0)

{

if(*p==' ')

{

char *q=p;

while(*q!=0)

{

*q=*(q+1);

q++;

}

}

else

{

p++;

}

}

}

int main()

{

char orig[80];

printf("输入字符串:");

while(gets(orig)&&orig[0]!='\0')

{

printf("输出字符串:");

allitrim(orig);

puts(orig);

}

puts("bye!");

return 0;

}



是不是这个“while(*q!=0)”代码错了,应该是“while(*q==‘  ’)”。

还有‘ char *q=p; ’的“p”是所有的str的字符串吗?包括空格?为什么不直接用*p,直接用*p为什么或出现错误

分享到:
精彩评论 1
李木子
学分:2954 LV11
2018-12-10
沙发

你好:

   我运行结果是没有错的呀  你的结果可能是因为你输入的字符串长度大 导致只输出前几个字符 输入空格时  就会输出bye 退出程序

 

无标题.png

 

   

首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照