Start bonus with flags

This commit is contained in:
gbaconni
2022-04-25 13:19:42 +02:00
parent be4099ab31
commit 42f6f1fd1a
4 changed files with 53 additions and 5 deletions

View File

@@ -6,7 +6,7 @@
# By: gbaconni@student.42lausanne.ch +#+ +:+ +#+ # # By: gbaconni@student.42lausanne.ch +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ # # +#+#+#+#+#+ +#+ #
# Created: 2022/01/18 15:11:16 by gbaconni #+# #+# # # Created: 2022/01/18 15:11:16 by gbaconni #+# #+# #
# Updated: 2022/04/24 11:41:33 by gbaconni ### lausanne.ch # # Updated: 2022/04/25 13:17:14 by gbaconni ### lausanne.ch #
# # # #
# **************************************************************************** # # **************************************************************************** #
# #
@@ -46,7 +46,8 @@ SRC = \
ft_vprintf.c \ ft_vprintf.c \
ft_printf.c ft_printf.c
SRC_BONUS = SRC_BONUS = \
ft_vprintf_flags_bonus.c
OBJ = ${SRC:.c=.o} OBJ = ${SRC:.c=.o}
OBJ_BONUS = ${SRC_BONUS:.c=.o} OBJ_BONUS = ${SRC_BONUS:.c=.o}

View File

@@ -6,7 +6,7 @@
/* By: gbaconni@student.42lausanne.ch +#+ +:+ +#+ */ /* By: gbaconni@student.42lausanne.ch +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2022/01/20 11:43:52 by gbaconni #+# #+# */ /* Created: 2022/01/20 11:43:52 by gbaconni #+# #+# */
/* Updated: 2022/04/24 01:04:26 by gbaconni ### lausanne.ch */ /* Updated: 2022/04/25 12:48:04 by gbaconni ### lausanne.ch */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@@ -24,7 +24,7 @@ int ft_vprintf(char const *format, va_list ap)
if (*fmt == '%') if (*fmt == '%')
{ {
fmt++; fmt++;
fmt += ft_skipchars(fmt, "0123456789# +"); fmt += ft_skipchars(fmt, "0123456789+-.# +");
ret += ft_vprintf_percent(fmt, ap); ret += ft_vprintf_percent(fmt, ap);
} }
else else

View File

@@ -0,0 +1,36 @@
/* ************************************************************************** */
/* */
/* ::: :::::::: */
/* ft_vprintf_flags_bonus.c :+: :+: :+: */
/* +:+ +:+ +:+ */
/* By: gbaconni@student.42lausanne.ch +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2022/04/25 13:15:32 by gbaconni #+# #+# */
/* Updated: 2022/04/25 13:17:47 by gbaconni ### lausanne.ch */
/* */
/* ************************************************************************** */
#include "libftprintf.h"
int ft_vprintf_flags_bonus(const char *format, va_list ap)
{
int ret;
ret = 0;
(void) ap;
while (*format != '\0')
{
if (*format == '#')
ret |= F_HASH;
else if (*format == '0')
ret |= F_ZERO;
else if (*format == '-')
ret |= F_MINUS;
else if (*format == ' ')
ret |= F_SPACE;
else if (*format == '+')
ret |= F_PLUS;
format++;
}
return (ret);
}

View File

@@ -6,7 +6,7 @@
/* By: gbaconni@student.42lausanne.ch +#+ +:+ +#+ */ /* By: gbaconni@student.42lausanne.ch +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */ /* +#+#+#+#+#+ +#+ */
/* Created: 2022/01/18 15:26:06 by gbaconni #+# #+# */ /* Created: 2022/01/18 15:26:06 by gbaconni #+# #+# */
/* Updated: 2022/04/24 00:00:59 by gbaconni ### lausanne.ch */ /* Updated: 2022/04/25 13:18:21 by gbaconni ### lausanne.ch */
/* */ /* */
/* ************************************************************************** */ /* ************************************************************************** */
@@ -46,4 +46,15 @@ int ft_vprintf_escape(const char *format, va_list ap);
int ft_vprintf_other(const char *format, va_list ap); int ft_vprintf_other(const char *format, va_list ap);
/* Bonus */ /* Bonus */
enum {
F_HASH = 1 << 0,
F_ZERO = 1 << 1,
F_MINUS = 1 << 2,
F_SPACE = 1 << 3,
F_PLUS = 1 << 4
};
int ft_vprintf_flags_bonus(const char *format, va_list ap);
#endif #endif