当且仅当我尝试关闭文件时,我才会不断收到段错误:
FILE *outFilePtr = fopen(*(argv + 2), "w"); //open file, yes i'm sure it opens
fclose(outFilePtr); //sometime later in the program.
该程序在没有 flcose() 的情况下从头到尾运行。有什么建议么?
gdb 上的错误重定向到这里:假设它是一个声明了所有变量的函数。gdb 也责怪我什至没有使用的 strtol 。
int t;
char line[50];
for (t = 0; t < lines; t++){
fgets(line, 50, filePtr);
strcpy(*string[t], strtok(line, " "));
*(num1 + t) = atoi(strtok(NULL, " "));
*(num2 + t) = atoi(strtok(NULL, " "));
}
内存分配函数
void dynamicArray(int** num1, int** num2, char*** str, int size)
{
int i = 0;
*(num1) = (int*)malloc(sizeof(int) * size);
*(num2) = (int*)malloc(sizeof(int) * size);
*(str) = (char**)malloc(sizeof(char*) * size);
for( i = 0; i < size; i++){
*(*(str) + i) = (char*)malloc(sizeof(char) *size);
}
return;
}