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