我必须分配一个动态数组,我知道数组上有多少列,但我不知道有多少行,我所拥有的只是 .txt 文件上的一个数字。我已经尝试过以下代码,但我不确定它是否有效:
int x = (int)fgetc(file)-48;
由于 0 的 ascii 值是 48,我假设我需要转换从文件中读取的字符,以便能够将其用作我的行号。
我假设我应该能够将数组分配为二维数组,如下所示:
m = (int **)malloc(x*sizeof(int*));
for (i=0;i<x;i++)
{
m[i] = (int*)malloc(10*sizeof(int));
}
我说得对吗?任何帮助将不胜感激。
最佳答案
您可以设计一个列表并动态插入行。
关于c - 如何根据从文件读取的字符确定数组的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22447302/