Я пытаюсь взять ввод с консоли и распечатать его в текстовом файле. Ввод может быть очень большим (20 000 цифр)
#include <stdio.h>
#include <string.h>
#define MAX 100000
int main()
{
char id[MAX];
FILE *fp = fopen("new.txt", "w");
fgets(id, MAX, stdin);
for(int i=0;i<strlen(id);i++){
fprintf(fp, "%c", id[i]);
}
fclose(fp);
return 0;
}
Мой код печатает в файл только первые 4096 символов. Что я делаю неправильно? Пожалуйста помоги.