From bb43bb40e8c63c94fee6b7d272ac66b0dbcc50de Mon Sep 17 00:00:00 2001 From: Hugo LAMY Date: Sun, 6 Feb 2022 19:43:54 +0100 Subject: [PATCH] d01 ex04 boucle lecture ok --- d01/ex04/Makefile | 61 ++++++++++++++++++++++++++++++++++++++++++++++ d01/ex04/main.cpp | 24 ++++++++++++++++++ d01/ex04/sed | Bin 0 -> 26312 bytes d01/ex04/test.txt | 27 ++++++++++++++++++++ 4 files changed, 112 insertions(+) create mode 100644 d01/ex04/Makefile create mode 100644 d01/ex04/main.cpp create mode 100755 d01/ex04/sed create mode 100644 d01/ex04/test.txt diff --git a/d01/ex04/Makefile b/d01/ex04/Makefile new file mode 100644 index 0000000..81dd985 --- /dev/null +++ b/d01/ex04/Makefile @@ -0,0 +1,61 @@ +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # +# . name = value . name is case sensitive # +# VARIABLES . or name = value \ . use VPATH only for .c # +# . value . or .cpp # +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # + +NAME = sed + +CC = clang++ +CFLAGS = -Wall -Wextra -Werror $(INCLUDES) -std=c++98 -g3 + +VPATH = $(D_SRCS) + +LIBS = + +INCLUDES = -I$(D_HEADERS) + +D_SRCS = . +SRCS = main.cpp + +D_HEADERS = . +HEADERS = + +D_OBJS = builds +OBJS = $(SRCS:%.cpp=$(D_OBJS)/%.o) + +RM_D_OBJS = rm -rf $(D_OBJS) +ifeq "$(D_OBJS)" "." +RM_D_OBJS = +endif + + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # +# . target: prerequisites . $@ : target # +# RULES . recipe . $< : 1st prerequisite # +# . recipe . $^ : all prerequisites # +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - # + +all: $(NAME) + +$(D_OBJS)/%.o: %.cpp | $(D_OBJS) + $(CC) $(CFLAGS) -c $< -o $@ + +$(D_OBJS): + mkdir $@ + +$(OBJS): $(HEADERS:%=$(D_HEADERS)/%) + +$(NAME): $(OBJS) + $(CC) $(OBJS) -o $@ $(LIBS) + +clean: + rm -f $(OBJS) + +fclean: clean + rm -f $(NAME) + $(RM_D_OBJS) + +re: fclean all + +.PHONY : all clean fclean re bonus run valgrind diff --git a/d01/ex04/main.cpp b/d01/ex04/main.cpp new file mode 100644 index 0000000..e60f061 --- /dev/null +++ b/d01/ex04/main.cpp @@ -0,0 +1,24 @@ +#include +#include +#include + +int main() { + + std::ifstream file("test.txt"); + + // read words separated by whitespaces or newlines +// std::string str; +// while (file >> str) +// std::cout << str << std::endl; + + // skip whitespaces or newlines +// char c; +// while (file >> c) +// std::cout << c << std::endl; + + // seems good + char c; + while (file.get(c)) + std::cout << c; + +} diff --git a/d01/ex04/sed b/d01/ex04/sed new file mode 100755 index 0000000000000000000000000000000000000000..a25404343766beb60d9fa7d55c8bc86d9e2459a0 GIT binary patch literal 26312 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�?@lPtH!GH{p8-|ppi_CW?WWPomQu2eMhzri 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