#include<stdio.h>
int main()
{
char str[]="a1a2a3a4",*p=str;
int i=0;
while(*(p+i))
{
if(*(p+i)=='a') p[i++]='b';
}
puts(str);
return 0;
}
这个问题是将字符串“a1a2a3a4"中的a替换为b,有些不明白为什么这样写错误呢
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- qq_25376897 2021-01-21 17:16关注
如果取到的值不是a,i就不会加1,那么就没办法往下走,就会死循环。所以无论是不是a,i都要加1
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报