У меня есть заданная структура. Я прочитал все символы txt-файла и сохранил его в многомерном массиве (строках), который я определил в структуре. Затем я хочу передать переменную структуры функции, которая затем должна напечатать все символы в другой текстовый файл.
Вот что у меня есть:
typedef struct _content {
int length;
char **lines; // multidimensional array
} content_t;
int curline = 0; //global variables
int curchar = 0;
...
struct _content inhalt;
c = fgetc(ptr);
...
void write_content(char *filename, content_t *content)
{
FILE *pFile;
pFile = fopen(filename, "a");
printf("\nWriting Char Nr. %d in line: %d", curchar, curline);
fputc(content->lines[curline][curchar], pFile);
printf("\nJust wrote char Nr. %d in line: %d !", curchar, curline);
}
...
while(c != EOF)
{
inhalt.lines[curline][curchar] = c;
//where I call the function write_content:
write_content("write-file.txt", &inhalt);
if(c == '\n')
{
inhalt.length++;
curline++;
inhalt.lines[curline] = malloc(255);
curchar = 0;
}
else
{
curchar++;
}
c = fgetc(ptr);
printf("%c", c);
}
Последний вывод: «только что написал char Nr. 36 в строке: 22»
Но последний символ, записанный в файл, это Nr 0 в строке 10 ...