【发布时间】:2019-09-10 02:36:35
【问题描述】:
我发现了一些涉及读取 int 和输出它们的值的其他帖子,但是我想知道如何读取 int 并将它们存储到 const 中。
我已经定义了一些常量:
#define SEED 100
#define INIT_TIME 0
#define FIN_TIME 1000
#define ARRIVE_MIN 1
#define ARRIVE_MAX 5
#define QUIT_PROB 0.2
#define CPU_MIN 1
#define CPU_MAX 5
#define DISK1_MIN 1
#define DISK1_MAX 5
#define DISK2_MIN 1
#define DISK2_MAX 5
首先我想知道是否有一种方法可以将所有这些常量保存到 .txt 文件中并读取/使用它。
否则,我将如何将它们的值从文本文件存储到自身?
100
0
1000
1
5
0.2
1
5
1
5
1
5
例如,将第一个数字 (100) 存储到 SEED,然后将 0 存储到 INIT_TIME,等等。
我尝试了另一篇堆栈帖子中的一些代码,我相信这些代码允许您将值存储到一行中的变量中,但我得到了一个 0 的无限循环。这是我试过的代码:
fscanf("index.txt", "%d %d %d %d %d %d %d %d %d %d %d %d”, &SEED, &INIT_TIME,&FIN_TIME,&ARRIVE_MIN,&ARRIVE_MAX, &QUIT_PROB,&CPU_MIN,&CPU_MAX,&DISK1_MIN,&DISK1_MAX,&DISK2_MIN,&DISK2_MAX)
【问题讨论】:
-
必须在编译时分配常量。如果您需要在运行时设置值,那么这些就是变量,这里有很多关于将 int 读入 C 中的变量的现有帖子。
-
您显示的代码有印刷错误(缺少“),不会产生无限循环。在这种情况下如何声明
SEED等? -
纠正该错误。决定再次在我的帖子上输入它而不是打开我的项目。我将 SEED 等声明为 const ints