我试图弄清楚究竟是如何scanf
工作的。如果我编写这样的代码:
scanf("%s %d %f", name, &age, &wage);
输入这个作为标准输入:
james 20 34000.25
然后分别打印出姓名、年龄和工资,我得到的正是人们所期望的,就像我在标准输入中输入的一样。但是,如果我输入这样的内容:
scanf("%s/%d/%f", name, &age, &wage);
我将其作为标准输入输入:
james/20/34000.25
我得到james/20/34000.25
字符串值的字符串和整数和浮点值分别为 0 和 0.00000 的字符串。我认为scanf
将斜杠与第一个版本中的空格相同。如果用户输入斜杠分隔值,我将如何获得它,我可以将这些值适当地分配给变量?