我需要根据文件中的字节数来设置数组的大小。
例如,我想要这样做:
// Obtain the file size.
fseek (fp, 0, SEEK_END);
size_t file_size = ftell(fp);
rewind(fp);
// Create the buffer to hold the file contents.
char buff[file_size];
然而,我遇到了编译时错误,提示缓冲区的大小必须是一个常量。如何解决这个问题?
std::vector
是一个不错的选择。但我不明白他的代码为什么会失败。他基本上是在声明一个变长数组,我没有看到任何非法的地方?当我在 GCC 中尝试时它可以工作。 - Hans W