【发布时间】:2016-07-29 10:36:44
【问题描述】:
我想得到命令作为输入
<char><number><number>
那么是否有可能使用 c 中的一个 scanf() 函数来获取它?
int i,j;
char c;
scanf("%c%d%d",&c, &i, &j);
【问题讨论】:
-
scanf("%c%1d%1d", &c, &i, &j); -
您的 scanf 将读取 2 以外的 j 值。 @BLUEPIXY 为您提供了编写 scanf 的正确方法。
-
scanf("%c%1d%1d",&c, &i, &j);printf ("C = %c i = %d j = %d\n", c, i, j);给我# ./chksize.oA12C = A i = 1 j = 2 -
大概你的意思是
<char><digit><digit>,在这种情况下@BLUEPIXY 已经回答了。但是,如果您真的指的是数字而不是数字(其中数字可能是 10,(或 2345,或...),那么您必须将长度说明符调整为 2d 或 4d 或 ?? 假设您知道每个数字中的位数. 如果不是,你如何解释“23456”?是“2”后跟“3456”,还是“23”后跟“456”,还是……等等。