c - 使用 getchar() 获取多个值。

标签 c arrays algorithm

我能否以某种方式使用 getchar() 来运行命令行,直到我点击“\n”。 假设我想扫描输入的所有值,例如。

21 23 1 78 54 '\n'。我想将所有五个值扫描到一个数组中。我无法扫描它们。是因为每个值之间的间距吗?或者是否有我们可以用来执行此操作的函数?

提前致谢

最佳答案

如果您不想使用 getchar(),那么我有一个使用 scanf%d 转换说明符的简单解决方案:

while (i < ARRAY_SIZE && scanf("%d", &a[i]) == 1)
    i++ ;

%d 转换说明符告诉 scanf 跳过任何前导空格并读取下一个非数字字符。返回值是成功转换和赋值的次数。由于我们正在读取单个整数值,因此成功时返回值应为 1。

关于c - 使用 getchar() 获取多个值。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31231783/

相关文章:

php echo Open or Closed business hours depending on date or 日期

c++ - 边缘相交算法?

c - 不断收到隐式声明错误

c - 尝试从二进制文件读取数据,但未能将其放入结构中

PHP JSON 或数组到 XML

iOS - Swift - 使用数组和条件循环

c - 在C中读取字符串

c - libpng.lib 中的链接器错误 "unresolved external symbol __imp___iob_func"

php - 重构返回不同数据类型的函数

algorithm - 在运行时间算法中如何计算类似效率的 N 值?