From fdedca4e02bfcafc1cac049c98c8fa202f8d4c24 Mon Sep 17 00:00:00 2001 From: Preston Pan Date: Mon, 6 Feb 2023 01:50:56 -0800 Subject: more correct program structure --- Makefile | 4 ++-- conio.c | 15 +++++++++++++++ conio.h | 20 ++++++-------------- 3 files changed, 23 insertions(+), 16 deletions(-) create mode 100644 conio.c diff --git a/Makefile b/Makefile index f1c9064..a683251 100644 --- a/Makefile +++ b/Makefile @@ -1,9 +1,9 @@ CC=gcc -CFLAGS=-I. -pthread +CFLAGS=-I. -pthread -fsanitize=address DESTDIR=/usr/local/bin generate: - $(CC) -o snake snake.c vector.c $(CFLAGS) + $(CC) -o snake snake.c vector.c conio.c $(CFLAGS) install: cp snake $(DESTDIR) diff --git a/conio.c b/conio.c new file mode 100644 index 0000000..9b87cc9 --- /dev/null +++ b/conio.c @@ -0,0 +1,15 @@ +#include "./conio.h" +#include +#include +#include +int getch(void) { + struct termios oldattr, newattr; + int ch; + tcgetattr(STDIN_FILENO, &oldattr); + newattr = oldattr; + newattr.c_lflag &= ~(ICANON | ECHO); + tcsetattr(STDIN_FILENO, TCSANOW, &newattr); + ch = getchar(); + tcsetattr(STDIN_FILENO, TCSANOW, &oldattr); + return ch; +} diff --git a/conio.h b/conio.h index fa866f2..520e146 100644 --- a/conio.h +++ b/conio.h @@ -1,14 +1,6 @@ -#include -#include -#include -int getch(void) { - struct termios oldattr, newattr; - int ch; - tcgetattr(STDIN_FILENO, &oldattr); - newattr = oldattr; - newattr.c_lflag &= ~(ICANON | ECHO); - tcsetattr(STDIN_FILENO, TCSANOW, &newattr); - ch = getchar(); - tcsetattr(STDIN_FILENO, TCSANOW, &oldattr); - return ch; -} +#ifndef CONIO_H +#define CONIO_H + +int getch(void); + +#endif -- cgit v1.3.1