小编car*_*mcl的帖子

为什么另一个文件中的 void 函数没有在此 C 程序中运行?

我想打印 txt 文件的内容(第一个参数),但执行此操作的函数位于不同的文件中。我有以下主文件:

#include <stdio.h>
#include <stdlib.h> 
#include <string.h>
#include "fileoperation.h"

int main(int argc, char **argv)
{
  read(argv[1]);  
    
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

然后在 fileoperation.c 文件中我有:

#include "fileoperation.h"

void read(char* file)
{
  FILE *fptr;
  char c;
  fptr = fopen(file, "r");
  if (fptr == NULL)
  {
    printf("Cannot open file \n");
    exit(0);
  }

  c = fgetc(fptr);
  while (c != EOF)
  {
    printf ("%c", c);
    c = fgetc(fptr);
  }
  
  fclose(fptr);

}
Run Code Online (Sandbox Code Playgroud)

如果我在主函数中键入函数中的代码,它就会起作用。我不明白为什么不工作

fileoperation.c的头文件是

#ifndef FILEOPERATION_H
#define FILEOPERATION_H
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h> 
#include <string.h> …
Run Code Online (Sandbox Code Playgroud)

c modularity

4
推荐指数
1
解决办法
459
查看次数

标签 统计

c ×1

modularity ×1