繁体   English   中英

从stdin将整数读取到ADT中

[英]Reading integers into a ADT from stdin

这是我的抽象数据结构

 typedef struct {
    int *items;
    int size;
 } List;

我希望用户在单行上输入整数,例如

  a.out 
  12 14 2 8 9

并将它们读入列表。 我知道如何添加到列表中,我想我不明白的是从单行输入中获取整数

编辑:对不起,但我的意思是使用类似scanf的方法,而不使用命令行参数

1. main定义应为int main(int argc,char **argv)

2.这些数字将作为命令行参数(使用argv之前,请检查argc值是否大于1 )。

3. argv[1]argv[2]将具有这些数字,但为string。

4.使用atoisscanf函数将它们转换为整数,并根据需要存储在结构成员中。

编辑

编辑:对不起,但我的意思是使用类似scanf的方法,而不使用命令行参数

您可以使用fgets ,使用strtok标记字符串,然后将其转换并存储为整数变量。

您必须使用输入参数,例如:

您的main函数如下所示:int main(int argc,char * argv [])

在这种情况下,您可以像在命令行一样在命令行中添加参数

./a.out 12 14 2 8 9

您可以通过argv [1],argv [2],argv [3]等访问这些参数。

您可以遍历用户提供的参数,这些参数包含在argc变量中

访问第一个参数的示例:

i = atoi(argv [1]);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM