当从流中写入字符到数组时,如果流的大小在编译时未知,是否有一种方法可以使数组的长度成为确切的字符数?例如,当读取文本输入到数组中时,文本的大小可以是任意长度。
查找文件大小
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[];
如果你谈论的是单个元素,它是不可能增加的,因为我们声明数组的数据类型是常量。
谢谢