diff options
author | Shav Kinderlehrer <[email protected]> | 2023-04-10 00:58:48 -0400 |
---|---|---|
committer | Shav Kinderlehrer <[email protected]> | 2023-04-10 00:58:48 -0400 |
commit | e2ed5aca4d72971a9560d60daeb2f1c3ea8acb33 (patch) | |
tree | 50c803de4fe04441f1242f77ea9dd5275f411b53 | |
parent | 97a99175f4f33282fb02e0ad75e02dbc30ace80c (diff) | |
download | lat-e2ed5aca4d72971a9560d60daeb2f1c3ea8acb33.tar.gz lat-e2ed5aca4d72971a9560d60daeb2f1c3ea8acb33.zip |
Implement file opening
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | compile_flags.txt | 1 | ||||
-rw-r--r-- | include/lib.h | 4 | ||||
-rw-r--r-- | src/lib.c | 7 | ||||
-rw-r--r-- | src/main.c | 20 |
5 files changed, 33 insertions, 3 deletions
@@ -9,10 +9,10 @@ CC=cc CFLAGS=-I$(IDIR) -Wall -Wextra -pedantic LIB= -_DEPS= +_DEPS=lib.h DEPS=$(patsubst %,$(IDIR)/%,$(_DEPS)) -_OBJ=$(NAME).o +_OBJ=$(NAME).o lib.o OBJ=$(patsubst %,$(ODIR)/%,$(_OBJ)) diff --git a/compile_flags.txt b/compile_flags.txt new file mode 100644 index 0000000..30679be --- /dev/null +++ b/compile_flags.txt @@ -0,0 +1 @@ +-Iinclude diff --git a/include/lib.h b/include/lib.h new file mode 100644 index 0000000..69b5019 --- /dev/null +++ b/include/lib.h @@ -0,0 +1,4 @@ +#ifndef LIB_H +#define LIB_H +void die(const char *message); +#endif diff --git a/src/lib.c b/src/lib.c new file mode 100644 index 0000000..ef92935 --- /dev/null +++ b/src/lib.c @@ -0,0 +1,7 @@ +#include <stdio.h> +#include <stdlib.h> + +void die(const char *message) { + perror(message); + exit(1); +} @@ -1,3 +1,21 @@ -int main(void) { +#include <stdio.h> +#include <stdlib.h> + +#include "lib.h" + +int main(int argc, char *argv[]) { + if (argc < 2) { + printf("usage: catclone <FILE>\n"); + die("args"); + } + + FILE *fp = fopen(argv[1], "r"); + + if (fp == NULL) { + die("fopen"); + } + + fclose(fp); + return 0; } |