From 6c4b2222afd37724cebc2aabaf8f04a357918ace Mon Sep 17 00:00:00 2001 From: Adam Joly <adjoly@2E2.42angouleme.fr> Date: Fri, 3 Nov 2023 16:21:15 +0100 Subject: [PATCH] first commit --- Makefile | 56 ++++++++++++++++++++++++++++++++++++++++++++++++ ft_atoi.c | 37 ++++++++++++++++++++++++++++++++ ft_atoi.o | Bin 0 -> 1272 bytes ft_bzero.c | 18 ++++++++++++++++ ft_bzero.o | Bin 0 -> 1128 bytes ft_calloc.c | 18 ++++++++++++++++ ft_isalnum.c | 19 ++++++++++++++++ ft_isalnum.o | Bin 0 -> 1056 bytes ft_isalpha.c | 18 ++++++++++++++++ ft_isalpha.o | Bin 0 -> 1032 bytes ft_isascii.c | 18 ++++++++++++++++ ft_isascii.o | Bin 0 -> 1016 bytes ft_isdigit.c | 18 ++++++++++++++++ ft_isdigit.o | Bin 0 -> 1016 bytes ft_memcpy.c | 30 ++++++++++++++++++++++++++ ft_memcpy.o | Bin 0 -> 1104 bytes ft_memmove.c | 18 ++++++++++++++++ ft_memset.c | 26 ++++++++++++++++++++++ ft_memset.o | Bin 0 -> 1040 bytes ft_putchar_fd.c | 18 ++++++++++++++++ ft_putchar_fd.o | Bin 0 -> 1128 bytes ft_putnbr_fd.c | 38 ++++++++++++++++++++++++++++++++ ft_putnbr_fd.o | Bin 0 -> 1464 bytes ft_putstr_fd.c | 25 +++++++++++++++++++++ ft_putstr_fd.o | Bin 0 -> 1176 bytes ft_strchr.c | 34 +++++++++++++++++++++++++++++ ft_strlcat.c | 18 ++++++++++++++++ ft_strlcpy.c | 28 ++++++++++++++++++++++++ ft_strlcpy.o | Bin 0 -> 1264 bytes ft_strlen.c | 23 ++++++++++++++++++++ ft_strlen.o | Bin 0 -> 1016 bytes ft_substr.c | 39 +++++++++++++++++++++++++++++++++ ft_substr.o | Bin 0 -> 1472 bytes ft_tolower.c | 18 ++++++++++++++++ ft_tolower.o | Bin 0 -> 1016 bytes ft_toupper.c | 18 ++++++++++++++++ ft_toupper.o | Bin 0 -> 1016 bytes libft.a | Bin 0 -> 19486 bytes libft.h | 40 ++++++++++++++++++++++++++++++++++ 39 files changed, 575 insertions(+) create mode 100644 Makefile create mode 100644 ft_atoi.c create mode 100644 ft_atoi.o create mode 100644 ft_bzero.c create mode 100644 ft_bzero.o create mode 100644 ft_calloc.c create mode 100644 ft_isalnum.c create mode 100644 ft_isalnum.o create mode 100644 ft_isalpha.c create mode 100644 ft_isalpha.o create mode 100644 ft_isascii.c create mode 100644 ft_isascii.o create mode 100644 ft_isdigit.c create mode 100644 ft_isdigit.o create mode 100644 ft_memcpy.c create mode 100644 ft_memcpy.o create mode 100644 ft_memmove.c create mode 100644 ft_memset.c create mode 100644 ft_memset.o create mode 100644 ft_putchar_fd.c create mode 100644 ft_putchar_fd.o create mode 100644 ft_putnbr_fd.c create mode 100644 ft_putnbr_fd.o create mode 100644 ft_putstr_fd.c create mode 100644 ft_putstr_fd.o create mode 100644 ft_strchr.c create mode 100644 ft_strlcat.c create mode 100644 ft_strlcpy.c create mode 100644 ft_strlcpy.o create mode 100644 ft_strlen.c create mode 100644 ft_strlen.o create mode 100644 ft_substr.c create mode 100644 ft_substr.o create mode 100644 ft_tolower.c create mode 100644 ft_tolower.o create mode 100644 ft_toupper.c create mode 100644 ft_toupper.o create mode 100644 libft.a create mode 100644 libft.h diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..5b4d1b0 --- /dev/null +++ b/Makefile @@ -0,0 +1,56 @@ +# **************************************************************************** # +# # +# ::: :::::::: # +# Makefile :+: :+: :+: # +# +:+ +:+ +:+ # +# By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ # +# +#+#+#+#+#+ +#+ # +# Created: 2023/11/01 11:03:22 by adjoly #+# #+# # +# Updated: 2023/11/03 11:59:46 by adjoly ### ########.fr # +# # +# **************************************************************************** # + +NAME = libft.a + +CC = cc + +SRCS = ft_atoi.c \ + ft_bzero.c \ + ft_isalnum.c \ + ft_isalpha.c \ + ft_isascii.c \ + ft_isdigit.c \ + ft_putchar_fd.c \ + ft_putnbr_fd.c \ + ft_putstr_fd.c \ + ft_memcpy.c \ + ft_memset.c \ + ft_strlcpy.c \ + ft_strlen.c \ + ft_substr.c \ + ft_tolower.c \ + ft_toupper.c \ + +OBJS = $(SRCS:.c=.o) + +FLAGS = -Werror -Wall -Wextra + +HEADER = libft.h + +$(NAME): $(OBJS) + ar -rcs $(NAME) $(OBJS) + +%.o: %.c + $(CC) $(FLAGS) -I $(HEADER) $< -c -o $@ + +all: $(NAME) + +clean: + rm -f $(OBJS) + +fclean: clean + rm -f $(NAME) + +re: fclean all + +.PHONY: clean all re fclean \ No newline at end of file diff --git a/ft_atoi.c b/ft_atoi.c new file mode 100644 index 0000000..ec4eecb --- /dev/null +++ b/ft_atoi.c @@ -0,0 +1,37 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_atoi.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 09:00:27 by adjoly #+# #+# */ +/* Updated: 2023/11/01 17:15:05 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_atoi(const char *nptr) +{ + int i; + int sign; + int nbr; + + i = 0; + sign = 1; + nbr = 0; + while ((nptr[i] >= 7 && nptr[i] <= 13) || nptr[i] == 32) + i++; + if (nptr[i] == '-') + { + sign *= -1; + i++; + } + else if (nptr[i] == '+') + i++; + while (nptr[i] >= '0' && nptr[i] <= '9') + { + nbr = nbr * 10 + (nptr[i] - '0'); + i++; + } + return (nbr * sign); +} diff --git a/ft_atoi.o b/ft_atoi.o new file mode 100644 index 0000000000000000000000000000000000000000..afb00108d3ce9e528dc1417d842d1ae2f8a5515a GIT binary patch literal 1272 zcmbtT&ubGw6rM?9lS<l+MM2cVf}nzANfg8?XhcT$&?*Q)FA}%gZ7s=eO0p?ckP1tr z+Z6HOP3Td2)1xN|c!+<77Y|8uh>$~iTHjlDx<9%%AI!e@zW2Rv-pnLhY~ewIQo@ar zJH*d8O31f_AD7&)M5cjRmhIoN{btf*V?=vwgxx(h#7yq6iL5S;h3~11HAxG*=R#mM z^OahMGu!Mycz-5TLAoe>>_TaW9qdz~eFEzJS@?9=*y>W7jr)6!<Ais}3vJY?vXNu6 zk<Yw%O#G_Qo(_pYLi+ge6|<RQ*E%e0vw^UCe7t#K55^npu))!Im!Q4Mh9~9DA{@I6 z$IhOz`UU#aW<!6NPcU|e4TUdk^!x`YFSQJ_C8{;WSQR(4Msuxhh{bDCK`Q2p^DVb} z9du9QY+&^D6GAt0^n5m*`2bga0We%>ck$})&F0=E?$1mmZ&9GQc-)5pm?D3ixLT3~ z9@`^`;O7FkyBA=HqhUv=OER@hlSpb^*EItIqi$-_!$;+O(^S+dSurb$SzjYkt+t_8 zl;veO`6`hbT1}C(mz9-<qHCNasYGg;4O3YH|4K*y-}V?3k})dJyhBtXHN4uOVUBAm z2tr))a(+L&oa2G#)8Mhc5W%;+jV?!U4|aR7gnAqcQa{ImG2Gk#u=UWJ0k-e;-wcXE z9Q`HT04x>ZU|RA7&w4fN!~ZVt=lB)Ck_%29+*?>j#_yj4yf1pJr$C6#jy=CT;tNc` LFvWM~I(+}XJ2k>C literal 0 HcmV?d00001 diff --git a/ft_bzero.c b/ft_bzero.c new file mode 100644 index 0000000..c6902d8 --- /dev/null +++ b/ft_bzero.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_bzero.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 11:58:03 by adjoly #+# #+# */ +/* Updated: 2023/11/03 12:03:51 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_bzero(void *s, size_t n) +{ + ft_memset(s, '\0', n); +} diff --git a/ft_bzero.o b/ft_bzero.o new file mode 100644 index 0000000000000000000000000000000000000000..62d7f17b044ddf81f796f38891616a6bd4df5469 GIT binary patch literal 1128 zcmb_aJ4*vW5S~kdFH{au5EM)!+GH`>Xd@9(4-^aGz((Tb+(a>V7cYAu3ZftgK@0zr z7XA^z!a^Id5aP_a8<#V74(xt2-@JB*xmep;PZ<U%F<=>fEX4vmYh)p&3ow9@w$*yF zu3k*5b^c+sqF3t%@y345zduuyb@gEG-Gg0<d=X{cs^eF(4Ib8y0zaFdXLBr{%P&Q- zcOkAi8s7lM*$x;@)0i0S?YqO?lgQH{nWk%H*t|}y4)yF~0NH<tjeG{)+TGk~Nd2Ox zkQveVxEFF`c+6kX027kSAkz74e@j;K)Isl(0T%MA!vt>%U~b@f+!s(5MUQ)R9&4pD z9tObtKybFPZRhI3agTvjs|~N{930^ADzXSaES5vZ<CGs~F&9`}gu*Eyo_d7;B>Pw= z-KExv+>2Vmr>#ru>A{;gLR|{dP;*wk<g6)|=9`p)Y&0$%{fIPgwG)aTM2<q|@aV#& zF{6{H%d#Du)i^!$RyQ<V<tu6v736CAE|Bj|1}sWcpx&?SbyT|je^)kA|D^xZj8(qk pseXE^9Uxrd=}1lHtM^hqiL$>ffJ0Q0ZztcQ3}{NEJld0F|1Xn_Vrl>Y literal 0 HcmV?d00001 diff --git a/ft_calloc.c b/ft_calloc.c new file mode 100644 index 0000000..8504518 --- /dev/null +++ b/ft_calloc.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_calloc.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/01 16:02:26 by adjoly #+# #+# */ +/* Updated: 2023/11/01 16:06:22 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void *calloc(size_t nmemb, size_t size) +{ + +} diff --git a/ft_isalnum.c b/ft_isalnum.c new file mode 100644 index 0000000..b41e0b0 --- /dev/null +++ b/ft_isalnum.c @@ -0,0 +1,19 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_isalnum.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 08:31:10 by adjoly #+# #+# */ +/* Updated: 2023/11/03 11:49:58 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_isalnum(int c) +{ + if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') + || (c >= '0' && c <= '9')) + return (1); + return (0); +} diff --git a/ft_isalnum.o b/ft_isalnum.o new file mode 100644 index 0000000000000000000000000000000000000000..aecf709b39388ebd5a5262c2305a6c6069b80369 GIT binary patch literal 1056 zcmb`F&r1S96vyAH{iIrnh@cMM3c^9_l9y1z>L48gI~1X-Z6@uH&`~Uif*_Ejy7%AI zq5h069XfXNAk=&AjE$Se9?Z`7ect=NS!VYto!Ja%8pzOK9ey)O0p1mu?BXPhVP|%` z`O&;=-(0p0y)}*nR2TaFlBZHVwy)pMcr2#3W<8bAA0|+}raLtJbHvm5gu8U-@CCAk zn!{_6qGdRxNZqVd%dQiNudo=4N8^cFx4KI07&M$hyVwP-5!U7>Mn)fT>;f`c6bJN3 zO@(g*8<WF<J?tPbIJOao;Ol!(H3)$}IE-Xk;oY;4MMNh#`do~g4Gyg6+P3L%IOe%> z)v%nJ4a{-5$+mW~(JD8Jr@$<$Zs&}nBfNkTu!?CJ%sj~*R}9-!e5?qp$}8L`;C^n? z{tuDG8NmT_8sdL2eKmo5lyX|bJ>rR^$mKoBGToyZ^iz;Orb5(DB46}zdA{7|u`adR z`m833_V=!P{<FSshwM#w))X&E|1Xt57V`B_nimJni5mHaa7n-9%gBP6Zx^>~T)mL@ cFM;&=-~SLB{O{iNh{n7aKq-A^IY*xV1FD2!>Hq)$ literal 0 HcmV?d00001 diff --git a/ft_isalpha.c b/ft_isalpha.c new file mode 100644 index 0000000..5585ab7 --- /dev/null +++ b/ft_isalpha.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_isalpha.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 08:31:10 by adjoly #+# #+# */ +/* Updated: 2023/11/03 11:52:37 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_isalpha(int c) +{ + if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) + return (1); + return (0); +} diff --git a/ft_isalpha.o b/ft_isalpha.o new file mode 100644 index 0000000000000000000000000000000000000000..0bd62e8db83892c881ed910026096413d475ad0b GIT binary patch literal 1032 zcmbu7&r1S96vy9cX@#XkL{Nvlb#lnM)S=MAl8_F8mmqY~^#|<_(N#={f}oJ1`b(n! zp+o&6K^?nw5b8ahv2F6!!0h|J&wJlDtFvdx^tMmaKrRh7;3tz5;Kc*uJsgK|?98M( zubtD+i_=dYzL~%Rs&@Exrmqs=o7uiP2;YTJJtw;~=snoi_=M|Z_wWfaM-AI;=y{Xd zCB13X>J`V<W6Nxb#iFsbMz6Yp-87h%*4_uL718EH!LfTBxqyr|tsQzKrXrWVt;v9I z6FUeDU+aiR;Nxpp)epWu_yEbYhxg7xri)H;{BkkZXt}`hj%67(3fplFwzHRs)?J=I z24<Q~E6WQ7{KX|;HN)i0C})c`ZW&N?vz0nGt7Xpe!0K+z<wqD#EQ&uxarD2!F1r0g zCgjAu8%j;!0i~RFU_kmJE^_%l$#O&r5$S^<|B}M5M82qSdA^J^Pik-LgE#SLwU@pv zWYu4HhwM>!Ry|&l>L<mJjVL{oro=&WqDH<^+|n<(j?AC_axk3Z9;}@5qSB{e*hh!@ T?lk00Ov;H!KDuW)N1p!;y%1aN literal 0 HcmV?d00001 diff --git a/ft_isascii.c b/ft_isascii.c new file mode 100644 index 0000000..32648e4 --- /dev/null +++ b/ft_isascii.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_isascii.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 08:31:10 by adjoly #+# #+# */ +/* Updated: 2023/10/31 08:46:18 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_isascii(int c) +{ + if (c >= 0 && c <= 127) + return (1); + return (0); +} diff --git a/ft_isascii.o b/ft_isascii.o new file mode 100644 index 0000000000000000000000000000000000000000..11cdcbfa601bcb81fb18440964f1b72b2ed789ea GIT binary patch literal 1016 zcmb_aK}!Nr5S~@j0!xXApbp+Tgb%GtUc?B?gG2-##nyE-$z5Z26$`{52&ACSo%$Kw zJM<U&106bc^B~xazNvNd*udLw=9}-E_jqr6+5CY|QGi2%H2hY~0=&4$%$Ux=0xAo+ z{ztz%xakfca=(fV%zBZBFlKMrA(=iylN`TrmmL;gp-^s_PAjH0RI?Uq>y}+_nz7`z zNQh)SnQD!@J0!<gnE)tPC!lnq%6d37|A=EZkf%j4*6uAuZ+-iVK@$ZNdgeEWYyiGS zvzmVJ{h?#XEW3C<7x5J2m~sh6?>Hc|reWwNCT7#o#o<vQZab=W4ppaAw^duK*FiKI zZKI@CDtG}k5SHFhg??75TB@PDbV37RJC>uC5ibqGe~1Fk@XwfYEZ<r8^jyzB?odrD z=+R|l&G*FZC?^u>ryzgA!`rgn^zghtBhBO7Eq!tquH36lPy82CZ-?Bo^z2Gx@cvUN zYy`OJ!d<!1n&ikghl~BpZz1Q;kD3VAxPF4~p9%JP&tF7=_w3|(m&Q|x<fC`yIlTWj DeJE8V literal 0 HcmV?d00001 diff --git a/ft_isdigit.c b/ft_isdigit.c new file mode 100644 index 0000000..79e2778 --- /dev/null +++ b/ft_isdigit.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_isdigit.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 08:50:01 by adjoly #+# #+# */ +/* Updated: 2023/11/03 11:53:33 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_isdigit(int c) +{ + if (c >= '0' && c <= '9') + return (1); + return (0); +} diff --git a/ft_isdigit.o b/ft_isdigit.o new file mode 100644 index 0000000000000000000000000000000000000000..9473b5faa9dc877f2ae8dc509d87f549741921d6 GIT binary patch literal 1016 zcmb_aK}!Nb6n?9w1(p&KfgSeNAsn<Wc@ZNl4-yf06kByQ$z8)8#R4e^0x76-r+!BF z4*iAxK!=XqJP7t?omb=Lu?I8Xd*A!MnPFzGviW_VrU8WpY51*(1$a@&j7w)=0hNW^ z;A7Aq-t>ow$o(odFiS-q!kE2fN5b?On&ddcU3OG_g+jSw^NwC=8g^apnr)}ivi0N^ zOR!`-nd-RRZ6U{4nE+^)$DsA1S}Yuzf5c_ikrzXRtKD6S-um_ygEk5#^vpSjYyiH- zvzmVJ{h_1CEGs;nOP5OFm~t_0_BgOg%d$+HLyeajPPI{QAZNF@$qo(+afcg~GhoeT z*D4v+DqcVxSletG%segC+J<E+K2`zd@HRKfh!>W?e~1FE;h(Y2k$h*<(^H<`?TA{8 zphuUHHQf`n#XYJaK85fnR1$MX)*Bw4_9u*CpK?|Dq!vo<)ut!@^QpH(?pb<vBocW4 zR0<mbYAU!RH(HaN@Xg^MKk=K$`Sarz!ZnVcp!+9+eBSdHQQ$qh@VraoiA3QO?@a5^ F{@*@#RT%&P literal 0 HcmV?d00001 diff --git a/ft_memcpy.c b/ft_memcpy.c new file mode 100644 index 0000000..0c0abb3 --- /dev/null +++ b/ft_memcpy.c @@ -0,0 +1,30 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_memcpy.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/02 10:21:55 by adjoly #+# #+# */ +/* Updated: 2023/11/02 11:30:30 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void *ft_memcpy(void *dest, const void *src, size_t n) +{ + size_t i; + + i = 0; + if (src == NULL || dest == NULL || n == 0) + { + return (dest); + } + while (i < n) + { + ((unsigned char *)dest)[i] = ((unsigned char *)src)[i]; + i++; + } + return (dest); +} diff --git a/ft_memcpy.o b/ft_memcpy.o new file mode 100644 index 0000000000000000000000000000000000000000..c12f99803fbc2571a65cb519dec30b0339963fee GIT binary patch literal 1104 zcmb_aK}#D^5S~q}rfAGsLMiGYH=&S6(q39hOIq3b4%&l~Qz_}Xu3DPiNV1Wn5L$>z zw}Il%=+7v4@F4WO$6SQuriVgq>&)(Zab0qB;O%_#&3yCTzBk{s_4f%y0ci@nf!j#3 z0BYhEmjYOVhgezW?j?6SSKMt5xLfY?bIqeP?{)@|IeHwzD}=Kl>_g@_O|Yk-NE;2` zVKBr+jK^PT{Y-Zyj0U{7;r+^{f>MM(1L*PYUj>!k@WS_f*#`aS(;1Yvo3_);8CBih z%N?5a#+RC%D?VcdR?HV)HiPVQ+AK>SH09eSC@oc4nwv?T;*T#QM~mz?ecsNiCyCYc zbi&07A|~4!(o=BlPs%1Ca(SYF?)XuJ5B5SXC-S7YquO;UmT4IWZD5Ysa)22%%Q9^Q zcFi%_+J|z!;poO!VAblORnd2L@aOk{)y=BT%>Bx4UAIgacVPywhEsR+ZS-x6{Jq!~ zc1cd?^hXSp5z7gB%+iz)H$7%TP!h4cCz)0y5PktY=?gLbpNMI+q9*s3ei4%rN9+Da zg9wh-z7F*Vcis-Uk<h$|XbHwgit<yj8VYGP$)1ER&^<sb^^$*zTyov7q5FYrZ1Vmk cA$9Tdf5d|L*-29ng`X)vqmbTN_L2MF0DDS&+5i9m literal 0 HcmV?d00001 diff --git a/ft_memmove.c b/ft_memmove.c new file mode 100644 index 0000000..bc2ebdf --- /dev/null +++ b/ft_memmove.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_memmove.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 15:04:04 by adjoly #+# #+# */ +/* Updated: 2023/11/03 15:57:15 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void *ft_memmove(void *dest, const void *src, size_t n) +{ + +} diff --git a/ft_memset.c b/ft_memset.c new file mode 100644 index 0000000..a9d8143 --- /dev/null +++ b/ft_memset.c @@ -0,0 +1,26 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_memset.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 17:40:22 by adjoly #+# #+# */ +/* Updated: 2023/11/03 12:11:08 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void *ft_memset(void *s, int c, size_t n) +{ + size_t i; + + i = 0; + while (i < n) + { + ((char *)(s))[i] = c; + i++; + } + return (s); +} diff --git a/ft_memset.o b/ft_memset.o new file mode 100644 index 0000000000000000000000000000000000000000..936618d9a85e3fa0d2231efe074b37dbf56e401c GIT binary patch literal 1040 zcmb`F&o2W(6vyATXeE9$;vhKGNg^>(E<{L0R`*aMq$iPDYy61rR@$kQL`WoJQwRTx zi=%LG<v-{}!i~hiZN1md)LK1y$@I<peBXCwI<u#GdLg7~phAOL_^A{Hc=Ewy4JV-; zJ2Qs+Vz?(?Zt2r-Gq1*@UM1D2=v8A{f9*aW!m6TwUfv`6GAfJJ%id^BJ-^coSFgT3 zd!9$y`U7M(OO7bTt(@uX#1DC)xR-b0iE%c@5~GQ!Qcazp<pFx@3AE!C(8@7wpd%8! z#xo8gr$LdXpSiBsMQFaWEtJ9z0?i|ZxCK7EW@;Ehe{c**kB`^(LKc^u<oM-cf|ms_ zD{tG}5wI<?Hn)o$k&_pkrIs?IMPXX|z;d}mJ8N!j;osi@R^U04@!jlp!L<30jak5o zq9Dvo%ttome~DFGCER4CUHSf2K$EyZsix7^AoWR7*6N;=O!w%I2o~fY^Fy3p$$B`z z)&45?qps%u)*FA}n+JPm>i&aYZ-?wwdM15dng%~9(pv&OR4&Vn`lLp_RvgN&_z1Fa k+RI})!_f$J{|YEy@ce7o5Ij41-lcIvX7bTHt98`=-;uOuivR!s literal 0 HcmV?d00001 diff --git a/ft_putchar_fd.c b/ft_putchar_fd.c new file mode 100644 index 0000000..b644921 --- /dev/null +++ b/ft_putchar_fd.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_putchar_fd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 11:42:17 by adjoly #+# #+# */ +/* Updated: 2023/11/01 17:15:09 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_putchar_fd(char c, int fd) +{ + write(fd, &c, 1); +} diff --git a/ft_putchar_fd.o b/ft_putchar_fd.o new file mode 100644 index 0000000000000000000000000000000000000000..786101f83fd99b1b1fee865a6bbdab008793650b GIT binary patch literal 1128 zcmbtSJ4*vW5S~kdFH{au5EMxx+PD~Pw2>20uMi6%Vk6;lxfn5biI=??1yK+rK}3I# ztrq?f!NSHag>cSXc6B{t<p;Yn^UZ5_n2YtTjfAFwga#|{ZAlj3RUwUtHediFvu5kX zyn54(X1lo_wu1J}dE2}V!Uu|fr9kuQN#B2jY(DUKkhaT~caW|-e(kX0r85g`o@M4T z%R%H_1Q?BK188SEpfz-DVz9UG9&1e^Plqr|*Xpo-omd;{u`z(`Kd_5@3f{wR?j$6B z(Izq@3Lo`C4xa}4uV{cN!KF~r`3O5m3!XZtT~fe&r))9qG&nH3;<}E9idW$d+uY91 z)wpFJ0V|j5Zq6zca7+hq;vaHH<T<5W(YIU&iab{hxLvaRT(R)eVm7cE_qmlvdFqn< zH;Pyx*`>;{*o%71r>sll>A{;gk}3>g$T>@2eAbjp^Nqt0jmCweA0^FO?u6tAk)zOg zJSs}Um{Cd8McFSorf_QLooXn$%$L*(D#%sUT_E4R2v`zQ3i*C%FQd}!|9hg5{3rdN uW-Rk1KaE^+E3BZn#Pfx!$d~V>e1fz)7J!FJ{O#m>76A<*DUbFf-v1MRCuM&C literal 0 HcmV?d00001 diff --git a/ft_putnbr_fd.c b/ft_putnbr_fd.c new file mode 100644 index 0000000..a21fe77 --- /dev/null +++ b/ft_putnbr_fd.c @@ -0,0 +1,38 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_putnbr_fd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 11:52:46 by adjoly #+# #+# */ +/* Updated: 2023/11/03 11:54:29 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_putnbr_fd(int n, int fd) +{ + unsigned int nbr; + + if (n < 0) + { + write(fd, "-", 1); + nbr = -n; + } + else + nbr = n; + if (nbr < 10) + write(fd, &(char){nbr + '0'}, 1); + else + { + ft_putnbr_fd(nbr / 10, fd); + write(fd, &(char){(nbr + '0') % 10}, 1); + } +} + +// int main(void) +// { +// ft_putnbr_fd(10, 1); +// } diff --git a/ft_putnbr_fd.o b/ft_putnbr_fd.o new file mode 100644 index 0000000000000000000000000000000000000000..2560b2ba4c666e9e10dde1b6fdfc50204b75ff28 GIT binary patch literal 1464 zcmbtT&ubG=5PqBVhtz6=SSYBNgW{oN$<~WSC=prRLlF@IUL<UiO)X|OW%IU1VNqC+ zgiz?;;KhsofF7iv;8pw!ya*PG&^BNWfjG0BNuFywIq-I7zW06e=Ka_g=K7tKrU^Dp ztch{Ps1W_sI4;CtL7WC=(dvA+qJvB)9CU(y6b{6~&J~#NhJEV;OWtF}AD9_?%jTeC z_V#BW>BeCc_U0C%%b17#uGx$B@@@0j+6j)wvi+Mez4vYoYkd86*!kQI`f<gPXf)UU z(l(Dke>B!x(WlI#k2xWV<-n6cwo<pfjqJALH#Zwz)>zT=x{)(hgLw8jtRc?h2TXhZ zKxnOuc42<@)Gln}B49Ys-s0!h+03id?K3l}H^4w(vK0ZI5{JV{vuU9mu0lwIB54)? z=M;Y217O&6CP{|;5@C1)X=Q$yVq9Sw#$b42<$vIzf}@7{uN7RalO-H?rtWTPTIjx0 zw{_{Xq|hr3*L6GyyoPl2yZ4H@rnD<hgkG<2yCu6?g&W!sPyJ2lkj{Brs`<9-h?*>I z1=1_~rCRlmM6U?FDSc^|!9R0j?>DNpv=KIRgIfD9R|U0to?OhQ%|;B6PySQ*{t-j3 zT7eS2SDs7WEo%RM9YTDgg<2%U9|l|Er@2J91dr4e%Gn)IpxzlmRCeU&3Ck0o-A@Xx zF+e`4Uj&>nmAW_yoWNZ>!M2ipE|LC*S`=d5Kf|jKOgg`ZRFKaJ&u>=IGkz7Y^!l&? j?j?+oaYNh}>d}(hssqNHm_VQVMBJquQ|y!b=k<RBAL6&) literal 0 HcmV?d00001 diff --git a/ft_putstr_fd.c b/ft_putstr_fd.c new file mode 100644 index 0000000..1f63bff --- /dev/null +++ b/ft_putstr_fd.c @@ -0,0 +1,25 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_putstr_fd.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 11:45:55 by adjoly #+# #+# */ +/* Updated: 2023/11/01 17:14:02 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +void ft_putstr_fd(char *s, int fd) +{ + int i; + + i = 0; + while (s[i]) + { + write(fd, &s[i], 1); + i++; + } +} diff --git a/ft_putstr_fd.o b/ft_putstr_fd.o new file mode 100644 index 0000000000000000000000000000000000000000..12aaf0bf49a5d5661b2713654ce33cde90fe6545 GIT binary patch literal 1176 zcmb_aK}#D!6n>iowW4;B7KD1prR~YV=tV&!rEEI~TcMa^3F~H~;_fDFW^ELtLP}}K zr3Zh2{tbH(D%w9%u+YO6Jmes(?<F&FTypFOGv9mPdvD&%V?JAJZ!(4f3I?pgy{A-w znasUi?3qOv$IKFM|K_c~CT|~h+tJOH6;qIRtS)!n#YZb+@c7FMR62(@yc3~l#oV|& zqZZec*|Fl*xzV=bKfjVB;jIhv<4-7UMuCX(j%Np3`8_vm?9_sMVS&xF!dziF>O~i+ z8sJHvz&Q8-M$<H&O^l9x$J1v~r$yMH?bVd|HS>CMB(shgBn(Fh<sAG=hDEcW4M8Sw z<Y`Us^+JuVXUZI%R-}_drge+2Cgi0~9rP|aV4>^TOt?(}%&Gal8=w)?gv;K(FU>WC z?d$^cygk2cS1LHFE%+4f2v^p*+vRF#`z};PxgLpz2+P&V1BW@lP!{$k^1e^}A5g(F zvO~@}m7hzbV(C9Of^pJ_brhwe=B#4rSyL^|H;uY%G$R9#kZIoPODKH;HA<bwrQ=vS zFLe=ZdF+6nYMP$<Lw7V=)hlTg4b<xTU!d4IZHT2l4R&>ZB`l*c?ET+lBlS*tKh0Rx rEB!fY*|nsGbcAbw6IrkBOZ5ch_dNg)jr83q)|ClO$y7)GB;EfGI1G58 literal 0 HcmV?d00001 diff --git a/ft_strchr.c b/ft_strchr.c new file mode 100644 index 0000000..237ed3f --- /dev/null +++ b/ft_strchr.c @@ -0,0 +1,34 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strchr.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/01 15:45:18 by adjoly #+# #+# */ +/* Updated: 2023/11/02 10:08:05 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +char *ft_strchr(const char *s, int c) +{ + int i; + int j; + char *str_result; + + i = 0; + j = 0; + while (s[i] != c || s[i]) + i++; + if (s[i] == c) + { + while (s[i]) + { + str_result[j] = s[j + i]; + j++; + } + return (str_result); + } + str_result[0] = '\0'; + return (str_result); +} diff --git a/ft_strlcat.c b/ft_strlcat.c new file mode 100644 index 0000000..b2d1c87 --- /dev/null +++ b/ft_strlcat.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strlcat.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/03 15:59:31 by adjoly #+# #+# */ +/* Updated: 2023/11/03 16:03:46 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include 'libft.h' + +size_t strlcat(char *dst, const char *src, size_t size) +{ + +} \ No newline at end of file diff --git a/ft_strlcpy.c b/ft_strlcpy.c new file mode 100644 index 0000000..7299a2e --- /dev/null +++ b/ft_strlcpy.c @@ -0,0 +1,28 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strlcpy.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/01 09:52:45 by adjoly #+# #+# */ +/* Updated: 2023/11/03 16:15:47 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +size_t ft_strlcpy(char *dst, const char *src, size_t size) +{ + size_t i; + + i = 0; + while (i < size - 1 && src[i]) + { + dst[i] = src[i]; + i++; + } + if (i < size) + dst[i] = '\0'; + return (ft_strlen(src)); +} diff --git a/ft_strlcpy.o b/ft_strlcpy.o new file mode 100644 index 0000000000000000000000000000000000000000..3e5e97591929c8e1f1f92047258404b38e9deadb GIT binary patch literal 1264 zcmb_bL2J}d5T5MDc9m+@Qn8?i+ytRvS1-1LtVr}7S`lIKBuko2t2D`$-E7$kMIk6n z_u|EiH!mXiA7nvMul|DOB5c*edRsw=Gs%0~$C9HTyv)ou-@M72ygW5mZx<8=1QfUd z$B|$GwhPC8Ep=;f3YB#heP`jX3XAr}Eb5L}R3EZ0W=s;+UyE5E<M4-49kAtZ`{tn* zo=Y?4h_c!TwG@s)do{q+fqD2&(Vm~c{Lv*zbg)ojeRE9u{nU+FI8az*#z(J{B*9$F zuA4(GoXd(*<!7~o{r5&g<bZ{rDi1$GeZA`kUEOvqe^cLa+MUNOU$0&<Dn@mwy4+2( zS4odp$P6e??t{`RD;MTwOD}OS7m=q$cu$X;XUZ=Mw@%L#-lBqtd^|u}h2KeDwg}R2 zxq!aGyu_!ykkfIMaZTe5Cseew{^Dc^I_If_+(m_rpwS81uD!hrM%!^MBXD{F7<S9^ z96u0g#|Oi21&(p&Zhff}SoRheuDjzktY#AjxXEjsM~#iP<vF4ZcQtG<ut8w0quuq$ z{s%O1k7CX~e`sKcATyIErzi1Q^oX08Fqu>1v6!<+PtTg}7|nMYUwNZNo;Zn?<}I#- z;LjsR(h4paKY2hGUxs*pVJ~A+__A(3kId1oWt{vwr`s&@`fKv0=!^FkG(#uv{4uW= y=cMz~j77cRSCA{NCM`72a7{4g_2L**PY`hy0l4VM_gL`vxUk0w3hACq_x}e6&YdU# literal 0 HcmV?d00001 diff --git a/ft_strlen.c b/ft_strlen.c new file mode 100644 index 0000000..5ccf0b8 --- /dev/null +++ b/ft_strlen.c @@ -0,0 +1,23 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_strlen.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/30 18:15:57 by adjoly #+# #+# */ +/* Updated: 2023/11/01 17:15:12 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +size_t ft_strlen(const char *s) +{ + int i; + + i = 0; + while (s[i]) + i++; + return (i); +} diff --git a/ft_strlen.o b/ft_strlen.o new file mode 100644 index 0000000000000000000000000000000000000000..0bbb64d68366066fa8c98a0b4d25754df39a605e GIT binary patch literal 1016 zcmb<-^>JfjWMqH=Mg}_u1P><4z_0^J&;cy$z`zMq8S2sb)T6WZ$8py$AW@HQ*B>6q zzF!(_I2ia__<$nau3wrDFm}3rdHLY~|NkDzu3usgGlV9U=9QExB<CdNr7M)B78Pga z=P4K(=^5x5>Ka;>f@O`twupd91_s8eAO^+?0Y+&ac8&=^x5xm+K^O!~L4+fpKpT@Y zFIxdn0f>(SxC6ym7(V{TCe6&igdr>d6cIua2ipY{Q-G=j=|It?SCU#$!l0L&pPQSS zSHh515?@?Wl#`mrpqH0llB(zK7phxal9-&$pqG<VmK&d#k^=O7I)h$OYEGhFYDRoo zQDSZ?LYrPPgC5X;lEfq+U6~7_sRDw5rZ8hMDF7PJ$!Ky&(GQjZ@j;jkO`QXj4+|%l zG$<UA0XvWb(r<t)2xON+`RZumF#BP&6i^<<MpilpnS;beS8EH=Uw{&KK(Pf-Jr+<J zMxm!EkUR@a5{b5eS|kA#1L<Q0VwirIxE4^1+2?;gkZJ&8IDmyeOaP`2-Tl!(1?X-E U>A3;bm;j|g`atmvGY4ir05JGl3;+NC literal 0 HcmV?d00001 diff --git a/ft_substr.c b/ft_substr.c new file mode 100644 index 0000000..c945549 --- /dev/null +++ b/ft_substr.c @@ -0,0 +1,39 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_substr.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/02 17:59:58 by adjoly #+# #+# */ +/* Updated: 2023/11/03 09:56:01 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#include "libft.h" + +char *ft_substr(char const *s, unsigned int start, size_t len) +{ + size_t i; + char *result; + + i = 0; + if (s == NULL || len == 0) + return (NULL); + if (start >= ft_strlen(s)) + { + result = malloc(1); + result[0] = '\0'; + return (result); + } + result = malloc(len * sizeof(char)); + if (result == NULL) + return (NULL); + while (i < len && s[start + i]) + { + result[i] = s[start + i]; + i++; + } + result[i] = '\0'; + return (result); +} diff --git a/ft_substr.o b/ft_substr.o new file mode 100644 index 0000000000000000000000000000000000000000..94c2f1107fce36e1079b0195b776c1a95171ea6a GIT binary patch literal 1472 zcmb`GL2DC16vt<~X^q;tK`ICe1}~!6rO}H)kcg}uB=I1`TZx-wTZ_9Jn`}xeM8&nz zZ7#hCf*-(s3Qbj-9&^kw7tuft@s@)S-`mV=$8CD^!S1~Iz5jdjW@h)5mcBnBNran3 z?vTS7r-Y<r!S~%1IR(lr^?p#dm!e*+?^S!$%XVl}Yomg?wLVeao*ua!qHNBf+tdaa z?RMc+*C0bXp!Hh+7eeao(K^hN2g;kvF#m$Bu!z=zP-`DVFhJIz`w27ZwGQ3;DTv%! zE4<W85aM#6&a@K^dOOqE(wd5U-bY%$p6O9J(^fu5qV9kw?;8-^)|$JLvN?&V*Z$RQ z&qn<opxBo0wyE2Yprv;A<8V0SvHeIi=oQ$2y5Cca-$*uJwVi6bVCwdAe9b6VR!Vj} zaYLO~6LX1V)sNmJv#=zZ^x_eb)??Cz=@Zc%IE{<I@Ig!9>D)aNdpB`!W=g&;fyC$I zUW))D<o9q~OePaY@FgIzBb1PHz|IPKzXxECkI_G1H6k$LC-esn2(2h^JY&wiV|bi# z>{RSlo+N77Fm=^2)*Yf2N|t5V4q0+?m1@4?lzq=Bn}$tPyW|+^!o%!b#nB7Th-#W^ zR!%P#;R=>n72|1csjOQDv2@cc6%OmD1)@SZN6*8!Vd3~+Yz3+azgAH5E8FBoKt@jZ z-<$%B3`fyYY{Kt{$HI4txp+5Wd&1VIEN~J=MEncGUk7a(9;`8s6TwzlqgMomF2lii zRbZm@0~d;Lj5a-D&sn>Hn&;mN$jIUSbG!h~xc%?4f_$I2e>`KJ&v_D<oF0~7cnwcr f4VKUQ!hE#wwpM|0jW1xY78CBUIZp9A39tVb*52BP literal 0 HcmV?d00001 diff --git a/ft_tolower.c b/ft_tolower.c new file mode 100644 index 0000000..56bb63e --- /dev/null +++ b/ft_tolower.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_tolower.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 17:15:28 by adjoly #+# #+# */ +/* Updated: 2023/10/31 17:26:10 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_tolower(int c) +{ + if (c >= 'A' && c <= 'Z') + return (c + 32); + return (c); +} diff --git a/ft_tolower.o b/ft_tolower.o new file mode 100644 index 0000000000000000000000000000000000000000..9fde8fe5784afbb5152326a35d0b549157037a0b GIT binary patch literal 1016 zcmb_bJ4*vW5S~jkD)<OuA!u=(g=8^mku)JeqA7xikVXjc64wXbLoS>6fS?c%f`axo z{tQdOKj9y+u(V4d#F@*kuBUbm?0qxe%(t_*b9bIEu0{+4lo^nLuSl@~4;q;b=q!w2 zWvS44>9o4-RyQ|sJ&g(UwkB@I(Ywlb+mB`^|Na{5N9bPV-^))>sy1BFFl)Bu?wL*Q z*AG0`OfIqomP{nmjUc-eG=Zr;fN{17#!1|m866tF#k0&JPm64s9=Y-OWn^V6=3xQF ze^>$e0eI{EmX1Q?2OURdQsaYO$eFT|6yH=#@Dl;7<~a^`1?-B7@NDmx`@mdJaJIHy zO4Nl_I|OFiO{Ze*?BM(F0rR<SF}`2f^(}{MI#vT#7rwBnh^G$WKUfL(i2kzAhMY4G z<+Sk!8H#DqXm!iVK;4td(LL%mgaPRnbP|0b<GB#8`YW8lyz=$ZJ3Y|+aBZfqKl(O1 z<nE;=B~d~6n@VG1KqWOy$wu@mkdbasBE^cIM?YHZc?cJ{K26=fB2?e-`O8=kK09fi PrEps!>1fVsAJzW@fg@T7 literal 0 HcmV?d00001 diff --git a/ft_toupper.c b/ft_toupper.c new file mode 100644 index 0000000..5066e55 --- /dev/null +++ b/ft_toupper.c @@ -0,0 +1,18 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* ft_toupper.c :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/10/31 17:15:28 by adjoly #+# #+# */ +/* Updated: 2023/10/31 17:26:15 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +int ft_toupper(int c) +{ + if (c >= 'a' && c <= 'z') + return (c - 32); + return (c); +} diff --git a/ft_toupper.o b/ft_toupper.o new file mode 100644 index 0000000000000000000000000000000000000000..374dad94e7da4daa7644870bf6e21386a1cffcdb GIT binary patch literal 1016 zcmb_bJxc>Y5S>fn7ibd1LeSzm3(1nGMbd<bL@k1dkW%7#S)+I#;j#%Th=L#l1?_G8 z8TS4O|A3&SU5bFtTy}LmwR2$a&Agenv$u11R<5kZ3<H!IP=v2Yu>cPmSqkYAjA3PU zz5Cof?OmMqtkm^1CeS-c-6YYwD)%m4%x<~=Iy{Kby(;&&AECP2_C(vX9m{K&9Uim} ze9z1+uq?}Ea)ox7T@0JR)BwOZ*#hGzZOn|1jNal|W|5~wwnUHRWco6;GBNC90mXmV zI`Rp4d;cvRhu9A~jm)IRhrN(9WhE)TshHqL0+{W)F82iNiJI`+%_a|kdA{ImZKIlL z3ClhN<~SX<X4UKX{taLOcPz&DYkPs^a!to<U@Z{{YZvj@CHx1g;vVr|_Suwk=8>E> z{xCx^EgG$EB^juDQaQRu-9|7VeO4#Y7c!oU@T$MU8O$qRFTK+P&5za=2m0o>*&%l? zHF=2&qTf^j6A6{nFfSX?uRun+A&C?#ejfdJ<=sa($MtFI{uQD6M$f;E1<|vU=1B^7 NB$AHitoBj;KL83%T6O>c literal 0 HcmV?d00001 diff --git a/libft.a b/libft.a new file mode 100644 index 0000000000000000000000000000000000000000..7df37533ec6fe67e30658a6c1416403bb188914a GIT binary patch literal 19486 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	@;nx4t+<)mO`VSk6ywLH!+s$8` zVR??|TO2!>`aeNr;b9gXon^+8OhncL`}xDofNSe@_80AMi|DLB3_{-w(OG}nQ>+$e zVkK*ZUrtvk8TzB4AQ;#M`v?XOxAqq?mcw8m=86;RbX!D=(S?BL*6{3_{YCkxHtZTz zp6P~oj6I~c8|H|=l1Jwp!5p*5<MP5Bv6EC`V$K$pH!-8Y0)Cir4a-aY62Bw~BR2K- zdN**2<@_+i>x@fKe{m<Z<Axbxe^Fns#?&9b<qhMG1?D-<a11$5%+OzWf0CF%-y<?+ z9I0c*!UfEr5Ap4<@55t;{Y)=l290}}GZJ6Gj5TA1{Z|k{*O-Z}MA);t;`0E$Qn=Aw zzG23`6rGP~+`hMXWBoc}rM;=CxAij1Wgq@sds!ChZD6oHcKDw)|6|ksmJW#RYX<)x z1k?Y}ZBcVEv`GQK0S&(c&Hjh|%tCLG^P}DnB=O#_>f_0p)4i+TWDW}jd0bxphuBH@ zgZdxGS-{W#@Y=8Xtu$!Frv6_0Rd2AIpZ|e!w>69S5BOO{fd3F?ze?<{g;^eHQ-81h zstOBcIEI{u|Dpd(hM^?D*@X4~4xsiv5Ql50dn(EQEI{kf2dK77Ut9cF$_?O=HA<!> zMCkAN!>m!TPvcyp=(dQ4eHwGz6G`EB5CP){m+ZU5D2-rZiu?H~+7@ACp_Ki{Kw-TV zdjxC{!YGxYzF_Q`LG~p^i~@6v16x4z!Wgl$RAbs2vTk!U#SO_E4ZE+B=LY>S>Sp3I z`vg(JIIgA^nY`bi5~4NjtDIyBKa9GE_}u#ckW2qzV_EBnT~NQ<8fk>(MPILdl|GVh T_-&*-!kitc364>Z8%F&fKeM2B literal 0 HcmV?d00001 diff --git a/libft.h b/libft.h new file mode 100644 index 0000000..233bd10 --- /dev/null +++ b/libft.h @@ -0,0 +1,40 @@ +/* ************************************************************************** */ +/* */ +/* ::: :::::::: */ +/* libft.h :+: :+: :+: */ +/* +:+ +:+ +:+ */ +/* By: adjoly <adjoly@student.42.fr> +#+ +:+ +#+ */ +/* +#+#+#+#+#+ +#+ */ +/* Created: 2023/11/01 10:06:03 by adjoly #+# #+# */ +/* Updated: 2023/11/03 15:57:10 by adjoly ### ########.fr */ +/* */ +/* ************************************************************************** */ + +#ifndef LIBFT_H +# define LIBFT_H + +# include <stddef.h> +# include <stdlib.h> +# include <unistd.h> + +int ft_atoi(const char *nptr); +void *ft_calloc(size_t nmemb, size_t size); +int ft_isalnum(int c); +int ft_isalpha(int c); +int ft_isascii(int c); +int ft_isdigit(int c); +void ft_bzero(void *s, size_t n); +void *ft_memset(void *s, int c, size_t n); +void *ft_memmove(void *dest, const void *src, size_t n); +void *ft_memcpy(void *dest, const void *src, size_t n); +void ft_putchar_fd(char c, int fd); +void ft_putnbr_fd(int n, int fd); +void ft_putstr_fd(char *s, int fd); +char *ft_strchr(const char *s, int c); +size_t ft_strlcpy(char *dst, const char *src, size_t size); +size_t ft_strlen(const char *s); +char *ft_substr(char const *s, unsigned int start, size_t len); +int ft_tolower(int c); +int ft_toupper(int c); + +#endif \ No newline at end of file