我很好奇是否可以在 C 中实现 scanf
的某种可变版本。我的意思是如果输入是 push (1 2 3)
, scanf
能够将其解析为 %s %d %d %d
,类似于 scanf("%s (%d)", string, some_list )
。
它将获取 %d
的所有实例并将它们(按顺序)附加到列表中...
我说的有道理吗?
编辑:对于指定的输入,string == "push"
和 some_list == [1, 2, 3]
。
最佳答案
不是 vscanf, vssscanf, vsfcanf是您要找的吗?它们从 C99 开始可用。
这里是 vscanf 的说明和用法示例功能。请注意,C 是一种编译型强类型语言,您需要正确给出格式说明符。做一些类似于高级语言所做的事情将涉及更多工作(但这是可能的,因为功能反过来是用 C 编写的)。
关于c - C 中的可变参数 scanf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6922159/