c - 从文件中获取结构的输入并在 C 中打印

标签 c file structure printf scanf

<分区>

当我尝试打印 expectedRuntime 变量时,它会打印出 expectedRuntime 的地址。 但我可以正确打印 timeOfSubmission 变量。谁能帮助我吗?

struct process
{
int timeOfSubmission;
int remainingRunTime;
int expectedRunTime;
char processName[20];

};

int main()
{
FILE *myInput;
myInput = fopen("input.txt", "r+");
while ( !feof(myInput) )
{

    struct process * newProcess=(struct process *)malloc(sizeof(struct process));

    fscanf(myInput, "%s", newProcess->processName);
    fscanf(myInput, "%d", & (newProcess->expectedRunTime) );
    (newProcess->expectedRunTime)=(newProcess->remainingRunTime);
    fscanf(myInput, "%d", & (newProcess->timeOfSubmission) );
    printf("%s    ",newProcess->processName);
    fflush(stdout);
    printf("%d    ",newProcess->expectedRunTime);
    fflush(stdout);
    printf("%d  \n",newProcess->timeOfSubmission);
    fflush(stdout); 
}
return 0;
}

最佳答案

阅读newProcess->expectedRunTime后, 你正在覆盖它:

fscanf(myInput, "%d", & (newProcess->expectedRunTime) );
(newProcess->expectedRunTime)=(newProcess->remainingRunTime);

其中有垃圾,因为尚未向 newProcess->remainingRunTime 写入任何内容。

关于c - 从文件中获取结构的输入并在 C 中打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14023827/

相关文章:

c - 试图进行微基准测试的结果不一致

C++ 无法打开 lib 文件

java - 为什么当我将元素从一维数组传输到二维数组时,在获取上一个循环生成的最后一个一维数组时

ios - 如何在 iOS 中打开文件浏览器并选择 .pdf 文件

c - 将管道分隔文件*读入结构数组 C

使用结构体与C程序联系经理

c - 为什么我的 fork 进程没有返回我想要取回的值?

c - x 向服务器发送数据以在 GUI 上显示输出的线程数

java - 无法从服务器上的java小程序读取相关文本文件

ios - 使用文本中的图像构建 UIViewControllers