C - Как читать строки строк из стандартного ввода или сохранения файловой памяти

Мне нужна версия строки чтения, которая экономит память. У меня есть это "за работой" решение. Но я'Я не уверен, как он ведет себя с памятью. Когда я включаюfree(text) это работает на несколько строк, а затем я получаю сообщение об ошибке. Так что теперь ни текст, ни результат никогда не освобождаются, хотя я и маллок текст Это верно ? И почему это так?

#include 
#include 
#include 

char* readFromIn()
{
    char* text = malloc(1024);
    char* result = fgets(text, 1024, stdin);
    if (result[strlen(result) - 1] == 10)
        result[strlen(result) - 1] = 0;
    //free(text);
    return result;
}

я имеюМНОГО коротких строк, чтобы прочитать с этим, и мне также нужно, чтобы стандартный ввод для замены сFILE* справиться. Мне не нужно перераспределять текст, потому что у меня только короткие строки.

Ответы на вопрос(5)

Ваш ответ на вопрос