C语言 从流中读取时不同大小的数组



当从流中写入字符到数组时,如果流的大小在编译时未知,是否有一种方法可以使数组的长度成为确切的字符数?例如,当读取文本输入到数组中时,文本的大小可以是任意长度。

查找文件大小

fseek(fp, 0, SEEK_END);
size = ftell(fp);
/* Rewind. */
fseek(fp, 0, SEEK_SET);

分配内存

char *buf = malloc(size);

我写C已经有一段时间了,但我相信你可以使用malloc()函数来动态分配内存块。

char* str = malloc( sizeof( char ) * lengthOfStream ) ;

您是在询问是否要增加每个数组元素的长度,还是想要增加数组的长度或大小?的元素)

如果u想增加序号。元素,然后使用这种语法

char array[];

如果你谈论的是单个元素,它是不可能增加的,因为我们声明数组的数据类型是常量。

谢谢

相关内容

  • 没有找到相关文章