如何在c中为未知字符串长度分配内存

Tha*_*raj 1 c string

可能重复:
如何为字符串动态分配内存空间并从用户获取该字符串?

我有一个文件.当从文件中逐行读取时,字符串的长度是未知的,因此如何以有效的方式为未知长度字符串分配内存.

注意:-

文件中的每一行都用"\n"分隔.

编程语言 - c

Jar*_*Par 6

这样做的一般模式是

  • 分配具有malloc指定大小的缓冲区.
  • 尝试读入缓冲区,直到空间不足为止
  • 用于realloc将缓冲区大小加倍并继续读取
  • 继续使用此模式,直到完全读取文件