【发布时间】:2020-02-15 19:15:06
【问题描述】:
我正在尝试创建一个 2D 数组,该数组将能够将 .txt 文件的每个字符存储为 2D 数组中的一个元素。
如何为它动态分配空间?
这就是我到目前为止所做的 malloc 它。 (这是从 GeeksForGeeks 复制的)
char *arr[rownum2];
for (i = 0; i < rownum2; i++) {
arr[i] = (char *)malloc(colnum * sizeof(char));
但是,我认为这是我程序中与内存相关的严重问题的根源,我也被告知其中某些部分是不必要的。
请问在这种特定场景下,我能否找到最合适的方式为二维数组动态分配内存?
【问题讨论】:
-
小sn-p看似合理,但没有上下文。
-
不需要的部分是:转换
malloc提供的值,sizeof(char)定义为1。所以arr[i] = malloc(colnum);
标签: c arrays pointers memory malloc