Как сохранить строки, набранные в командной строке, в буфер в C? - PullRequest
0 голосов
/ 02 декабря 2019

Я пытаюсь создать команду для создания текстовых файлов в командной строке для моей операционной системы. Пользователь вводит текст, нажимает ввод, вводит еще несколько и нажимает ввод дважды, когда текст закончен для создания файла. Проблема в том, что в буфер сохраняется только первая набранная строка.

int i=0;
int buffTotal=0;
char textLine[80];
char buffer[13312];

syscall(1, textLine) //user enters line of text which is stored in textLine

while(textLine[i] != 0xa) //0xa is the character appended to end of text typed in textLine
{
     buffer[i] = textLine[i];
     i++;
}
buffTotal+=80;

while(textLine[0] != 0x0A) //0X0A would be the first char in the array if user typed enter twice
{
     i=0;
     syscall(1, textLine);

     while(textLine[i] != 0xa)
     {
          buffer[buffTotal+i] = textLine[i];
          i++;
     }
     buffTotal+=80;
}
syscall(0,buffer); //this prints out the buffer
...