鱼C论坛

 找回密码
 立即注册
查看: 2655|回复: 7

想问鱼油们一个小小的问题

[复制链接]
发表于 2023-4-5 11:01:45 | 显示全部楼层
这段代码中,根据用户输入的一行文本,截取了一定长度的字符串,并输出。其中,如果输入的字符数组长度超过设定值 num(即 10),则只保留前面的一个空间用于存储字符串,最后加上 '\0' 终止符表示字符串结束;如果没有超过,则先找到最近的空格,然后截取该位置之前的字符串,并加上 '\0' 终止符表示字符串结束。

至于这三行:
  1. if(ch==num-1){
  2.     break;
  3. }
复制代码

这是为了确保如果没有空格的情况下,字符串也不会超过设定值 num(即 10)。如果删掉这三行,那么程序在没有空格的情况下,会一直读取字符并往数组里写入,可能会导致数组越界或者其它问题。
有用请设置最佳答案
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-2 02:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表