【发布时间】:2018-05-10 09:28:32
【问题描述】:
我要让用户给我 20 个数字,用逗号分隔。
为什么我不能指定一个数组的维度并“直接”将用户输入分配给这个数组?或者,是否有可能做到这一点,但我只是输入错误的代码来实现这一点?
我一直在研究 strtok 函数,但由于逗号将出现,这不会将数组转换为 char 数组吗?我希望数组是一个 int,因为用户只会给我整数。任何想法将不胜感激。
谢谢!
【问题讨论】:
-
也可以查看
atoi或sscanf。您可以在这里发布您的代码吗? -
通过“直接”,我的意思是如果我可以使用 scanf 将用户输入分配给正确大小的数组......我认为这会起作用,但在玩过这个之后我发现这没有像我希望的那样工作。
-
不幸的是,
scanf已经定义了用于检索和存储输入的接口。如果您对此有具体问题,请详细说明您的尝试、预期结果、实际结果、您期望它起作用的原因以及您已经进行了哪些调查以确定它为什么不起作用。跨度> -
strtok可用于将逗号分隔的行分割成逗号之间的部分。然后,您可以将它们传递给将字符串转换为整数值的函数。不过,您或许可以直接申请strtol。
标签: c