C++读取到回车换行符问题处理

时间:2022-03-25 09:28:32

今天在编写99乘法在线小游戏(看过我的 linux下c实现的数据库备份(第四版)应该知道我在那里提过^.^)的时候遇到读取文件的信息遇到回车换行符的烦恼。

比如我文件里面有如下信息:

?
1
2
name=qizexi
sex=man

我希望读取到name=qizexi这些有效字符而已,不希望 也加入其中,因为那样会影响我的判断。
解决的方式是在遇到 获取 的时候,替换为.

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include<string.h>
#include<stdio.h>
 
int main(int argc, char *argv[])
{
  char str[128];
  while (fgets(str, 127, stdin)) {
    char *tmp = NULL;
    //去掉换行符
    if (tmp = strstr(str, " "))
      *tmp = '';
    //去掉回车符
    if (tmp = strstr(str, " "))
      *tmp = '';
    printf("---%s--- ", str);
  }
  return 0;
}