- re-added ft_putchar/putnbr/putstr without fd

- added const for pointers in these functions
This commit is contained in:
asus
2024-01-11 10:36:13 +01:00
parent f32d4bbc96
commit 603303a21b
8 changed files with 104 additions and 8 deletions

View File

@@ -69,10 +69,14 @@ SRCS = ft_memset.c \
ft_itoa.c \
ft_utoa.c \
\
ft_putchar.c \
ft_putstr.c \
ft_putnbr.c \
ft_putnbrbase.c \
ft_putchar_fd.c \
ft_putstr_fd.c \
ft_putnbr_fd.c \
ft_putnbrbase.c \
ft_putnbrbase_fd.c \
\
ft_lstcreate.c \
ft_lstpush_back.c \

View File

@@ -53,16 +53,28 @@ char *ft_itoa(long int n);
char *ft_utoa(unsigned long int n);
char *ft_strmapi(char const *s, char (*f)(unsigned int, char));
void ft_putchar(char c);
void ft_putstr(const char *s);
void ft_putnbr(int n);
void ft_putnbrbase(int nbr, const char *base);
void ft_putchar_fd(char c, int fd);
void ft_putstr_fd(char *s, int fd);
void ft_putstr_fd(const char *s, int fd);
void ft_putnbr_fd(int n, int fd);
void ft_putnbrbase(int nbr, char *base);
void ft_putnbrbase_fd(int nbr, const char *base, int fd);
/*
void ft_putchar(char c);
void ft_putstr(char *s);
void ft_putnbr(int n);
void ft_putnbrbase(int nbr, char *base);
void ft_putchar_fd(char c, int fd);
void ft_putstr_fd(char *s, int fd);
void ft_putnbr_fd(int n, int fd);
void ft_putnbrbase_fd(int nbr, char *base, int fd);
*/
/*
void ft_putendl(char const *str);
void ft_putnbr(int nbr);
void ft_putstr(char const *str);
void ft_putendl_fd(char *s, int fd);
*/

7
srcs/ft_putchar.c Normal file
View File

@@ -0,0 +1,7 @@
#include "libft.h"
void ft_putchar(char c)
{
write(1, &c, 1);
}

17
srcs/ft_putnbr.c Normal file
View File

@@ -0,0 +1,17 @@
#include "libft.h"
void ft_putnbr(int n)
{
long l;
l = n;
if (l < 0)
{
ft_putchar('-');
l *= -1;
}
if (l >= 10)
ft_putnbr(l / 10);
ft_putchar((l % 10) + '0');
}

View File

@@ -12,7 +12,7 @@
#include "libft.h"
static int check(char *base)
static int check(const char *base)
{
int i;
int j;
@@ -36,7 +36,7 @@ static int check(char *base)
return (0);
}
void ft_putnbrbase(int nbr, char *base)
void ft_putnbrbase(int nbr, const char *base)
{
int i;
long n;

48
srcs/ft_putnbrbase_fd.c Normal file
View File

@@ -0,0 +1,48 @@
#include "libft.h"
static int check(const char *base)
{
int i;
int j;
i = 0;
while (base[i])
{
j = i + 1;
while (base[j])
{
if (base[i] == base[j])
return (0);
j++;
}
if (base[i] == '-' || base[i] == '+')
return (0);
i++;
}
if (i >= 2)
return (1);
return (0);
}
void ft_putnbrbase_fd(int nbr, const char *base, int fd)
{
int i;
long n;
i = 0;
n = nbr;
if (check(base))
{
if (n < 0)
{
ft_putchar_fd('-', fd);
n = -n;
}
while (base[i])
i++;
if (n >= i)
ft_putnbrbase_fd(n / i, base, fd);
ft_putchar_fd(base[n % i], fd);
}
}

8
srcs/ft_putstr.c Normal file
View File

@@ -0,0 +1,8 @@
#include "libft.h"
void ft_putstr(const char *s)
{
while (s && *s)
ft_putchar(*s++);
}

View File

@@ -16,7 +16,7 @@
#include "libft.h"
void ft_putstr_fd(char *s, int fd)
void ft_putstr_fd(const char *s, int fd)
{
while (s && *s)
ft_putchar_fd(*s++, fd);