diff options
| author | Cabergs Charles <cacharle@e-r6-p7.s19.be> | 2019-07-16 12:58:13 +0200 |
|---|---|---|
| committer | Cabergs Charles <cacharle@e-r6-p7.s19.be> | 2019-07-16 12:58:13 +0200 |
| commit | 66635d69fa00e335a091d7e6f2b358cbaaf205e4 (patch) | |
| tree | 3ecf5a41b4541980ba0287a431681cd5ae25ad84 /c10/ex00/main.c | |
| parent | 11114fd684250943de56c4f73ab45c97f2aaf83a (diff) | |
| download | piscine-66635d69fa00e335a091d7e6f2b358cbaaf205e4.tar.gz piscine-66635d69fa00e335a091d7e6f2b358cbaaf205e4.tar.bz2 piscine-66635d69fa00e335a091d7e6f2b358cbaaf205e4.zip | |
c09 passed, c10 start, exam00 and exam01
Diffstat (limited to 'c10/ex00/main.c')
| -rw-r--r-- | c10/ex00/main.c | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/c10/ex00/main.c b/c10/ex00/main.c index 8fee64a..bcf9e68 100644 --- a/c10/ex00/main.c +++ b/c10/ex00/main.c @@ -6,7 +6,7 @@ /* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2019/07/11 18:06:43 by cacharle #+# #+# */ -/* Updated: 2019/07/11 18:45:01 by cacharle ### ########.fr */ +/* Updated: 2019/07/15 13:45:33 by cacharle ### ########.fr */ /* */ /* ************************************************************************** */ @@ -15,26 +15,31 @@ #define BUFFER_SIZE 1 #include <stdio.h> -int write_buffer(char *buf) +void read_write_file(int fildes) { int i; + int writing; + char buf[BUFFER_SIZE]; - i = 0; - while (buf[i]) + writing = 1; + while (writing) { - write(STDOUT_FILENO, &buf[i], 1); - /*printf("%d %c\n", buf[i], buf[i]);*/ - if (buf[i] == -1) - return (1); - i++; + if (read(fildes, buf, BUFFER_SIZE) == 0) + break; + i = 0; + while (buf[i]) + { + write(STDOUT_FILENO, &buf[i], 1); + if (buf[i] == -1) + writing = 0; + i++; + } } - return (0); } int main(int argc, char **argv) { int fildes; - char buf[BUFFER_SIZE]; int reading; if (argc == 1) @@ -52,12 +57,7 @@ int main(int argc, char **argv) write(STDERR_FILENO, "Cannot read file.\n", 18); return (1); } - while (1) - { - if (read(fildes, buf, BUFFER_SIZE) == 0) - break; - write_buffer(buf); - } + read_write_file(fildes); close(fildes); return (0); } |
