首页 > 解决方案 > 无法将 2D Char 数组写入 C 中的文件

问题描述

我对 C 语言并不完全熟悉,但我正在尝试将 2D 字符数组写入文件,但遇到了一些问题。非常感谢任何和所有帮助。如果需要任何其他信息/上下文,请告诉我。

错误

malloc.c:2401: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' failed. Aborted (core dumped)

我的数组声明

#define MAX_LINE 80 
#define HISTORY_SIZE 10

char history[HISTORY_SIZE][MAX_LINE];

我的写功能

void writeHistory(){
char *fname = getHistoryFileName();

FILE *fp = fopen(fname, "wb");
if (!fp){
    printf("Unable to write to history file");
    exit(1);
}

//Write to the file
fwrite(history, sizeof(history), 1, fp);

fclose(fp);
}

标签: carraysfileio

解决方案


推荐阅读