首页 > 解决方案 > 我应该如何从标准输入中读取 C++ 中可变长度的格式字符串?

问题描述

抱歉这么愚蠢的问题,但我找不到任何明显的答案。

我需要先从数组的大小读取stdin一个int n,然后从带有n元素的格式为“1 2 3 4 5 6”的字符串中读取整数值。

如果我在编译时知道参数的数量,我可以使用像 a scanf(或安全的替代方案)这样的格式字符串"%d %d %d %d %d %d",但在这里我只会在运行时知道该值。

在 C++ 中执行此操作的最佳方法是什么?性能很重要,但比安全更重要。

标签: c++io

解决方案


我应该如何从标准输入中读取 C++ 中可变长度的格式字符串?

你不应该尝试做这样的事情。只使用常量格式字符串。

我需要先从标准输入读取一个具有数组大小的 int n,然后是整数值

在 C++ 中执行此操作的最佳方法是什么?

一次读取一个值。使用循环重复。


推荐阅读