我正在尝试解析包含固定列数中的整数的文本。例如,我的输入文件可能如下所示:
=1=2=3
=4=5=6
=8=910
其中=
符号表示输入中的空格。等号不在输入文件中;我只是为了说明的目的把它放在那里。每个整数包含在没有零填充的两列中,因此第三行不是拼写错误:它是 8、9 和 10。
该标准sscanf
不起作用,因为它首先消除空格,然后应用格式字符串。例如,我试过:
sscanf(buf, "%2d%2d%2d", &int1, &int2, &int3)
但它最终将第三行解析为 8、91 和 0。
有没有办法做到这一点,而无需手动逐列提取数据?