diff options
| author | Charles <sircharlesaze@gmail.com> | 2019-10-08 20:01:35 +0200 |
|---|---|---|
| committer | Charles <sircharlesaze@gmail.com> | 2019-10-08 20:01:35 +0200 |
| commit | 8f3e1c37b67ae18ece6140e497e48139c43f8253 (patch) | |
| tree | eb48e89c78c3559eba109d82a4509d05c2df149c /ft_printf.c | |
| parent | a92760a9b3a52268e751f6a25db215bcc01cd997 (diff) | |
| download | ft_printf-8f3e1c37b67ae18ece6140e497e48139c43f8253.tar.gz ft_printf-8f3e1c37b67ae18ece6140e497e48139c43f8253.tar.bz2 ft_printf-8f3e1c37b67ae18ece6140e497e48139c43f8253.zip | |
Added Makefile, ft_printf template
Diffstat (limited to 'ft_printf.c')
| -rw-r--r-- | ft_printf.c | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/ft_printf.c b/ft_printf.c new file mode 100644 index 0000000..9817e6c --- /dev/null +++ b/ft_printf.c @@ -0,0 +1,55 @@ +#include <unistd.h> +#include <stdlib.h> +#include <stdarg.h> +#include "ft_printf.h" + +int ft_printf(const char *format, ...) +{ + int i; + va_list ap; + + va_start(ap, format); + i = -1; + while (format[++i]) + { + if (format[i] == '%') + { + switch (format[++i]) + { + case 'c': + ft_putchar(va_arg(ap, char)); + break; + case 's': + ft_putstr(va_arg(ap, char*)); + break; + case 'p': + print_addr(va_arg(ap, void*)); + break; + case 'd': + ft_putnbr(va_arg(ap, int)); + break; + case 'i': + ft_putnbr(va_arg(ap, int)); + break; + case 'u': + ft_putunbr(va_arg(ap, unsigned int)); + break; + case 'x': + ft_putxnbr(va_arg(ap, int)); + break; + case 'X': + break; + } + } + else + write(STDOUT_FILENO, format + i, 1); + } + va_end(ap); + return (0); +} + +int main() +{ + ft_printf("bonjour\n"); + return 0; +} |
