c - 如何根据从文件读取的字符确定数组的大小?

标签 c

我必须分配一个动态数组,我知道数组上有多少列,但我不知道有多少行,我所拥有的只是 .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/

相关文章:

c - 为什么 Windows 上的 MinGW 不需要静态链接?

c - 得到错误答案——关于变量个数不确定

c - 为什么“while(!feof(file))”总是错误的?

c - TCP 客户端/服务器 : when stop read socket

c - LOCAL静态变量何时初始化

c - 无法通过同一网络连接到不同机器上的套接字

c - Kernighan和Ritchie malloc自由逻辑

C 中函数的类型冲突

c - 是否可以混合使用 C 和 Swift?

c - 循环中的数组元素返回随机大数字(有时为负数)