scanf on非STDIN输入

是否可以在输入上运行scanf ,它不是STDIN? 我的意思是如果我有一个string="hello 1 2 3" ,我可以在它上面运行scanf来提取字符串和三个整数吗?

还有其他function可以做到这一点吗?

字符串上的sscanf ( 此处为 info)

文件上的fscanf ( 此处为 info)

类似sprintf和fprintf写入字符串/文件。

如果你有一个字符串, sscanf会更合适。 您的问题的标题意味着从不同的流中读取,其他类似的function(参见fscanf )。