【发布时间】:2019-07-03 08:08:14
【问题描述】:
我是 C 初学者,我编写了一个类似的程序:
#include<stdio.h>
int main() {
char r[10];
char y[10];
puts("Printing Data \n");
while (scanf(" %10s %s",r,y) == 2) {
printf("%s and %s\n",r,y);
}
return 0;
}
CMD ./prog.c
文件.txt
aman dhaker
rudra pratap hensome
nitesh dhakar
虽然我希望 scanf 仅读取 2 个字符串,但在 file.txt 的第 2 行有 3 个字符串,但我想跳过第三个 arg,因为我只想打印 2 个字符串,但不知何故我无法跳过特定的字符串。
我目前的输出:
aman dhaker
rudra pratap hensome
nitesh dhakar
我想要的输出:
aman dhaker
rudra pratap
nitesh dhakar
请帮帮我。
我已经尝试包含像 [^] 这样的正则表达式来排除包含空格的结果,但没有成功。
【问题讨论】:
-
攻击者九,如果一行输入只有
"aman\n"会怎样?
标签: c