sscanf的格式说明符:%{format%}

时间:2018-11-29 20:41:07

标签: c scanf

我只在标题中看到了几个对该格式的引用,也没有很好的例子。我看到的定义是这样的:

  

devDependencies重复匹配格式说明符格式   时间,并给出结果数组。

有人有很好的例子说明如何使用它吗?您需要传递什么才能接收结果?

2 个答案:

答案 0 :(得分:2)

您似乎从docs.roxen/pike那里得到了这句话,这不是标准的C语言。

Pike 是一种面向对象的编程语言,其语法与Java和 C 相似。不是不是 C!


为了了解Page,您应该检查reference,其中提到:

  

sscanf():C字符串,其中包含格式字符串,其格式与scanf中的格式相同(有关详细信息,请参见scanf)。

,并提供了一个示例。另一个示例是:

format

输出:

#include <stdio.h>

int main () {
   int day, year;
   char month[10], date[15] = "29 May 1453";

   int items_read = sscanf(date, "%d %s %d", &day, month, &year);

   printf("Constantinople fell in %d %s %d. sscanf() Read %d items.\n", day, month, year, items_read);

   return 0;
}

这里Constantinople fell in 29 May 1453. sscanf() Read 3 items. 期望以sscanf()作为源,并将格式与后面的参数匹配。它将尝试将字符串date与一个整数匹配,后跟一个空格,一个字符串,一个空格和一个整数。

如您所见,date具有一个整数(29),一个空格,一个字符串(“ May”),一个空格和一个整数(1453),因此它与格式完全匹配。然后将这些值分配给相应的变量。

请注意,方法的返回值成功后如何返回参数列表中已成功填充的项目数。

答案 1 :(得分:0)

这似乎不完全是C ++的Pike独有。

  

Pike是一种解释性的,面向对象的编程语言。它看起来   有点像C和C ++,但是它更容易学习和使用。它可以   可用于小型脚本和大型程序。

http://docs.roxen.com/pike/7.0/tutorial/introduction/index.xml

http://docs.roxen.com/pike/7.0/tutorial/strings/sscanf.xml