'字符数组'整数到'整数数组'

时间:2015-08-07 20:14:58

标签: c arrays integer

我的要求:

将一些(未知数量)的整数作为用户的输入并将它们存储在数字数组中。

例如:输入:25 3 4 78.我希望它们存储在数字数组中,比如说num

    num[0] = 25
    num[1] = 3
    num[2] = 4
    num[3] = 78
    . . . 

我做了什么:

  1. 将输入存储在字符数组中。

    得到(ARR);  //从命令提示符处获取输入并存储在字符串

  2. 然后我尝试查找空格并分隔字符,但事实证明double digit number(say,25)存储为25但不是25 {1}}。

  3. 我如何实现这一目标?

1 个答案:

答案 0 :(得分:3)

好吧,由于您没有显示您的代码,我也不会提供任何代码,但我非常乐意为您提供流程图。

  1. 定义一个足够大的数组(稍后可能更改为动态分配)。
  2. 使用fgets()从用户(非命令行参数)获取输入。
  3. 使用strtok()使用空格作为分隔符来标记输入。
  4. 如果收到非NULL令牌,请使用strtol()将令牌转换为intlong
  5. 如果strtok()返回NULL意味着您已获得所有令牌并且输入为空,则完成后,您获得了int数组。