From 28041ebdf4d50a4e12a5b34e31acce6dcb9c150b Mon Sep 17 00:00:00 2001 From: leca Date: Fri, 17 Feb 2023 00:56:16 +0300 Subject: [PATCH] Made it work --- console | Bin 21424 -> 20488 bytes main.c | 66 ++++++++++++++++++++++++++++++++++---------------------- test.c | 37 ------------------------------- 3 files changed, 40 insertions(+), 63 deletions(-) delete mode 100644 test.c diff --git a/console b/console index e6089cc3e169767c377f3b3ae13095837f306567..68ae03d081cc46671baa66453bd3e64f1299e3ab 100755 GIT binary patch delta 5938 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 1; i --) +void clearScreen() { + for (int i = 0; i < rows; i ++) + for (int j = 0; j < cols; j ++) + mvprintw(i, j, " "); +} + +void printContent(char (*content)[cols+1]) { + for (int i = rows - 2; i > 0; i --) mvprintw(i, 0, "%s", content[rows - 2 - i]); } @@ -29,44 +41,46 @@ void insertInStartContent(char (*content)[cols+1], char* toInsert) { strcpy(content[0], toInsert); } +//void printStringIntoAFile(char* string) { +// FILE* f = fopen("string.txt", "w"); +// fprintf(f, "%s\n", string); +// fclose(f); +//} + int main (int argc, char* argv[]) { initscr(); cbreak(); keypad(stdscr, TRUE); noecho(); - - char ch = ' '; - int len = 0; - char* cmd_string = malloc(cols); - char (*content)[cols] = malloc(sizeof(char[rows][cols+1])); - - for (int i = 0; i < rows; i ++) - memset(content[i],0,sizeof(content[i])); + start_color(); getmaxyx(stdscr, rows, cols); + char ch = ' '; + int len = 0; + char cmd_string[cols]; + + memset(cmd_string, '\0', cols); + char content[rows][cols]; + for (int i = 0; i < rows; i ++) + memset(&(content[i]),'\0', cols); + while (ch = getch()){ switch (ch) { case 10: { - FILE* f = fopen("test.txt","w"); - fprintf(f, "test: %s", cmd_string); - fclose(f); insertInStartContent(content, cmd_string); len = 0; - clearInput(rows, cols); - memset(cmd_string,0,cols * sizeof(char)); - refresh(); - printContentIntoAFile(content); + memset(cmd_string, '\0', cols); break; } default: - mvprintw(rows - 1 , len, "%c", ch); cmd_string[len] = ch; len ++; break; } + clearScreen(); printContent(content); - mvprintw(rows - 1, len, ""); + printPrompt(cmd_string); refresh(); } diff --git a/test.c b/test.c deleted file mode 100644 index 09c335e..0000000 --- a/test.c +++ /dev/null @@ -1,37 +0,0 @@ -#include -#include -#include - -int cols, rows; - -void insert (char (*content)[cols], char* toInsert) { - int i = rows; - for (i; i > 0; i --) { - strcpy(content[i], content[i - 1]); - } - strcpy(content[i], toInsert); -} - -int main () { - cols = 50; - rows = 3; - - char (*content)[cols] = malloc(sizeof(char[rows][cols+1])); - - strcpy(content[0], "Test string 1"); - strcpy(content[1], "Test string 2"); - - printf("Array before insert: \n"); - - for (int i = 0; i < 3; i ++) { - printf("%s\n", content[i]); - } - - insert(content, "test string 0"); - - printf("Array after insert: \n"); - - for (int i = 0; i < 3; i ++) { - printf("%s\n", content[i]); - } -}