繁体   English   中英

我如何从C中的文件中读取

[英]How can i read from a file in C

如何使用此功能从文件中读取?

#include <stdio.h>

char* read_from_file (const char* filename, size_t length)
{
  //I have this so far
  fp = fopen(filename,"r"); // read mode

  if( fp == NULL )
  {
      perror("Error while opening the file.\n");
      exit(EXIT_FAILURE);
  }

  /* what goes in here? */

  return NULL;
}

我正在尝试实施以下准则:

  • 它分配一个长度为+1 的字符缓冲区。

  • 它以只读模式打开文件 filename。 当它无法打开文件时,它会释放缓冲内存

  • 它将 length 个字符读入缓冲区,在最后一个位置插入一个空字符 (\\0),关闭文件并返回一个指向缓冲区的指针。 当读取 length 个字符失败时,它释放缓冲内存,关闭文件并返回 NULL。

您几乎在问题中包含了答案:

  1. 分配一个length +1 的字符缓冲区。

  2. 以只读模式打开文件filename 如果打开文件失败,释放缓冲区并返回

  3. length字符读入缓冲区,在最后位置插入一个空字符 (\\0),关闭文件并返回指向缓冲区的指针。

  4. 如果读取length字符失败,则释放缓冲内存,关闭文件,并返回 NULL。

暂无
暂无

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

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