Я пытаюсь поработать с примером из книги K и R по этой теме, но изо всех сил.
Я хочу получить массив Char Arrays, в котором каждый элемент массива 'Father' указывает на массив символов (строку). По сути, я читаю из файла построчно, сохраняю каждую строку в массиве, а затем пытаюсь сохранить этот массив в другом массиве, который затем можно отсортировать с помощью qsort.
Но я, кажется, никуда не денусь с этим! Любая помощь в моем коде очень ценится, т.е. куда мне идти!
РЕДАКТИРОВАТЬ: Проблема в том, что функция печати не распечатывает мои слова, которые должны быть в массиве массивов, а просто печатает мусор, главная проблема в том, что я не уверен, что я разыменовываю все правильно или нет, правильно ли я добавляю его в массив массивов и т. д.
Привет.
#define MAXLINES 5000 /* max no. lines to be stored */
#define MAXLEN 1000 /* max length of single line */
char *lineptr[MAXLINES];
void writelines(char *lineptr[], int nlines);
int main(int argc, char *argv[]) {
int nlines = 0, i, j, k;
char line[MAXLEN];
FILE *fpIn;
fpIn = fopen(argv[1], "rb");
while((fgets(line, 65, fpIn)) != NULL) {
j = strlen(line);
if (j > 0 && (line[j-1] == '\n')) {
line[j-1] = '\0';
}
if (j > 8) {
lineptr[nlines++] = line;
}
}
for(i = 0; i < nlines; i++)
printf("%s\n", lineptr[i] );
return 0;
}