From 545b9ec6350ef0e38e7423617636043e5886f062 Mon Sep 17 00:00:00 2001 From: Antoine Date: Fri, 19 Jul 2019 15:06:24 +0200 Subject: [PATCH] Ajout de la fonction srtcat et modification du 0 de la police de la Graph 90+E --- include/gint/std/string.h | 3 +++ src/font8x9.png | Bin 17322 -> 3981 bytes src/std/string.c | 8 ++++++++ 3 files changed, 11 insertions(+) diff --git a/include/gint/std/string.h b/include/gint/std/string.h index 8f71dc2..1b90209 100644 --- a/include/gint/std/string.h +++ b/include/gint/std/string.h @@ -19,4 +19,7 @@ size_t strlen(char const *str); /* strncpy(): Copy a string with a size limit*/ char *strncpy(char *dst, char const *src, size_t n); +/* strcat(): Concatenation of src in dest*/ +char *strcat(char *dest, const char *src); + #endif /* GINT_STD_STRING */ diff --git a/src/font8x9.png b/src/font8x9.png index a9db9c0360f972fd3c25aa1602f2edbf9ad54ad2..7a3dcacc971e52ed5e55eb39a76a441ebf13a10c 100644 GIT binary patch literal 3981 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 literal 17322 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 Vp7ScUnE3zz002ovPDHLkV1iDKmQVly diff --git a/src/std/string.c b/src/std/string.c index 9cc23f8..85bc175 100644 --- a/src/std/string.c +++ b/src/std/string.c @@ -19,3 +19,11 @@ GWEAK char *strncpy(char *dst, const char *src, size_t n) while(i < n && (dst[i] = src[i])) i++; return dst; } + +GWEAK char *strcat(char *dest, const char *src) +{ + unsigned long fin_dest = strlen(dest); + unsigned int i; + for (i = 0 ; i <= strlen(src) ; i++) dest[fin_dest + i] = src[i]; + return dest; +}