主函数也没有什么就是看看getline函数的处理结果是否大于0,然后在看看remove的处理结果是否大于0,然后打印。
getline跟之前的一样。
remove函数里先循环一个判断是否为换行符如果不是一次++i,
如果是因为刚才已经进行过++i所以这里要把换行符的那个减掉所以之后跟了一个--i。
第二个循环是先判断是否有字符,因为如果直接是换行符的话,会直接--i,i就变成负数所以>=0就是说至少有别的字符存在。有别的字符存在才有判断的意义如果没有字符就直接跳过了。然后判断是否为空格和制表符,如果是然后把i再向前移,这是因为i就是记录字符串的最后位置,最后只要在这个位置加上换行符和‘\0’那么之后就算有别的字符也无所谓了,因为到‘\0’的时候读取已经结束了,程序不会再向下读取。
网友评论