aboutsummaryrefslogtreecommitdiff
path: root/c02
diff options
context:
space:
mode:
authorCharles <sircharlesaze@gmail.com>2019-07-05 09:52:18 +0200
committerCharles <sircharlesaze@gmail.com>2019-07-05 09:52:18 +0200
commitaf8435d40cdb8e7871ff004fb21382c236f9bd0f (patch)
treecb3b12beae45345a131d99a949f7708a0590d7da /c02
parent7a5f4a91bdea79aa17c54c544523ebb01f09907f (diff)
downloadpiscine-af8435d40cdb8e7871ff004fb21382c236f9bd0f.tar.gz
piscine-af8435d40cdb8e7871ff004fb21382c236f9bd0f.tar.bz2
piscine-af8435d40cdb8e7871ff004fb21382c236f9bd0f.zip
c02 tested
Diffstat (limited to 'c02')
-rw-r--r--c02/ex00/ft_strcpy.c4
-rw-r--r--c02/ex02/ft_str_is_alpha.c11
-rw-r--r--c02/ex03/ft_str_is_numeric.c9
-rw-r--r--c02/ex04/ft_str_is_lowercase.c9
-rw-r--r--c02/ex05/ft_str_is_uppercase.c9
-rw-r--r--c02/ex07/ft_strupcase.c11
-rw-r--r--c02/ex08/ft_strlowcase.c (renamed from c02/ex08/ft_strlowercase.c)9
-rw-r--r--c02/ex10/ft_strlcpy.c27
-rw-r--r--c02/ex11/ft_putstr_non_printable.c8
-rw-r--r--c02/main.c130
10 files changed, 119 insertions, 108 deletions
diff --git a/c02/ex00/ft_strcpy.c b/c02/ex00/ft_strcpy.c
index 9a1e1f1..069012f 100644
--- a/c02/ex00/ft_strcpy.c
+++ b/c02/ex00/ft_strcpy.c
@@ -6,7 +6,7 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/03 18:54:30 by cacharle #+# #+# */
-/* Updated: 2019/07/04 21:16:26 by cacharle ### ########.fr */
+/* Updated: 2019/07/05 08:46:57 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -15,7 +15,7 @@ char *ft_strcpy(char *dest, char *src)
int i;
i = 0;
- while (*src != '\0')
+ while (src[i] != '\0')
{
dest[i] = src[i];
i++;
diff --git a/c02/ex02/ft_str_is_alpha.c b/c02/ex02/ft_str_is_alpha.c
index bddf6a4..6ea6b4e 100644
--- a/c02/ex02/ft_str_is_alpha.c
+++ b/c02/ex02/ft_str_is_alpha.c
@@ -6,22 +6,15 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/03 19:10:32 by cacharle #+# #+# */
-/* Updated: 2019/07/04 10:12:29 by cacharle ### ########.fr */
+/* Updated: 2019/07/05 08:35:07 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
-int is_between(char start, char end, char subject)
-{
- printf("--%c %c %c\n", start, end, subject);
- return (subject >= start && subject <= end);
-}
-
int ft_str_is_alpha(char *str)
{
while (*str != '\0')
{
- printf("%c ", *str);
- if (!(is_between('a', 'z', *str) || is_between('A', 'Z', *str)))
+ if (!((*str >= 'a' && *str <= 'z') || (*str >= 'A' && *str <= 'Z')))
return (0);
str++;
}
diff --git a/c02/ex03/ft_str_is_numeric.c b/c02/ex03/ft_str_is_numeric.c
index 83ad454..b39f6bc 100644
--- a/c02/ex03/ft_str_is_numeric.c
+++ b/c02/ex03/ft_str_is_numeric.c
@@ -6,20 +6,15 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/03 19:26:04 by cacharle #+# #+# */
-/* Updated: 2019/07/04 10:31:44 by cacharle ### ########.fr */
+/* Updated: 2019/07/05 08:37:16 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
-int is_between(char start, char end, char subject)
-{
- return (subject >= start && subject <= end);
-}
-
int ft_str_is_numeric(char *str)
{
while (*str != '\0')
{
- if (!is_between('0', '9', *str))
+ if (!(*str >= '0' && *str <= '9'))
return (0);
str++;
}
diff --git a/c02/ex04/ft_str_is_lowercase.c b/c02/ex04/ft_str_is_lowercase.c
index e12d16e..5449eb0 100644
--- a/c02/ex04/ft_str_is_lowercase.c
+++ b/c02/ex04/ft_str_is_lowercase.c
@@ -6,20 +6,15 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/03 19:30:47 by cacharle #+# #+# */
-/* Updated: 2019/07/04 10:34:23 by cacharle ### ########.fr */
+/* Updated: 2019/07/05 08:35:46 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
-int is_between(char start, char end, char subject)
-{
- return (subject >= start && subject <= end);
-}
-
int ft_str_is_lowercase(char *str)
{
while (*str != '\0')
{
- if (!is_between('a', 'z', *str))
+ if (!(*str >= 'a' && *str <= 'z'))
return (0);
str++;
}
diff --git a/c02/ex05/ft_str_is_uppercase.c b/c02/ex05/ft_str_is_uppercase.c
index 0ff55b2..1e77e07 100644
--- a/c02/ex05/ft_str_is_uppercase.c
+++ b/c02/ex05/ft_str_is_uppercase.c
@@ -6,20 +6,15 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/03 19:33:13 by cacharle #+# #+# */
-/* Updated: 2019/07/04 10:36:44 by cacharle ### ########.fr */
+/* Updated: 2019/07/05 08:45:10 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
-int is_between(char start, char end, char subject)
-{
- return (subject >= start && subject <= end);
-}
-
int ft_str_is_uppercase(char *str)
{
while (*str != '\0')
{
- if (!is_between('A', 'Z', *str))
+ if (!(*str >= 'A' && *str <= 'Z'))
return (0);
str++;
}
diff --git a/c02/ex07/ft_strupcase.c b/c02/ex07/ft_strupcase.c
index 30ef161..3be9ddb 100644
--- a/c02/ex07/ft_strupcase.c
+++ b/c02/ex07/ft_strupcase.c
@@ -6,23 +6,18 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/03 19:48:22 by cacharle #+# #+# */
-/* Updated: 2019/07/04 21:01:47 by cacharle ### ########.fr */
+/* Updated: 2019/07/05 09:10:41 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
-int is_between(char start, char end, char subject)
-{
- return (subject >= start && subject <= end);
-}
-
char *ft_strupcase(char *str)
{
- char *head;
+ char *head;
head = str;
while (*str != '\0')
{
- if (is_between('a', 'z', *str))
+ if (*str >= 'a' && *str <= 'z')
*str = *str - 'a' + 'A';
str++;
}
diff --git a/c02/ex08/ft_strlowercase.c b/c02/ex08/ft_strlowcase.c
index c0e27c6..1c7b56c 100644
--- a/c02/ex08/ft_strlowercase.c
+++ b/c02/ex08/ft_strlowcase.c
@@ -6,15 +6,10 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/03 19:53:41 by cacharle #+# #+# */
-/* Updated: 2019/07/04 11:24:01 by cacharle ### ########.fr */
+/* Updated: 2019/07/05 09:10:17 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
-int is_between(char start, char end, char subject)
-{
- return (subject >= start && subject <= end);
-}
-
char *ft_strlowcase(char *str)
{
char *head;
@@ -22,7 +17,7 @@ char *ft_strlowcase(char *str)
head = str;
while (*str != '\0')
{
- if (is_between('A', 'Z', *str))
+ if (*str >= 'A' && *str <= 'Z')
*str = *str - 'A' + 'a';
str++;
}
diff --git a/c02/ex10/ft_strlcpy.c b/c02/ex10/ft_strlcpy.c
index 08f72a2..aa6cfa5 100644
--- a/c02/ex10/ft_strlcpy.c
+++ b/c02/ex10/ft_strlcpy.c
@@ -6,8 +6,33 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/04 15:27:01 by cacharle #+# #+# */
-/* Updated: 2019/07/04 15:27:03 by cacharle ### ########.fr */
+/* Updated: 2019/07/05 09:44:10 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
+unsigned int ft_strlen(char *str)
+{
+ unsigned int counter;
+ counter = 0;
+ while (*str != '\0')
+ {
+ counter++;
+ str++;
+ }
+ return (counter);
+}
+
+unsigned int ft_strlcpy(char *dest, char *src, unsigned int size)
+{
+ unsigned int i;
+
+ i = 0;
+ while (i < size - 1 && src[i] != '\0')
+ {
+ dest[i] = src[i];
+ i++;
+ }
+ dest[size - 1] = '\0';
+ return (ft_strlen(src));
+}
diff --git a/c02/ex11/ft_putstr_non_printable.c b/c02/ex11/ft_putstr_non_printable.c
index 0171464..d436d9e 100644
--- a/c02/ex11/ft_putstr_non_printable.c
+++ b/c02/ex11/ft_putstr_non_printable.c
@@ -6,7 +6,7 @@
/* By: cacharle <charles.cabergs@gmail.com> +#+ +:+ +#+ */
/* +#+#+#+#+#+ +#+ */
/* Created: 2019/07/04 16:46:03 by cacharle #+# #+# */
-/* Updated: 2019/07/04 21:53:48 by cacharle ### ########.fr */
+/* Updated: 2019/07/05 07:44:04 by cacharle ### ########.fr */
/* */
/* ************************************************************************** */
@@ -17,14 +17,14 @@ void ft_putchar(char c)
write(1, &c, 1);
}
-void ft_putstr_non_printable(char *str)
+void ft_putstr_non_printable(char *str)
{
unsigned char tmp;
unsigned char *cursor;
- char *hex_symbols;
+ char *hex_symbols;
hex_symbols = "0123456789abcdef";
- cursor = str;
+ cursor = (unsigned char*)str;
while (*cursor != '\0')
{
if (*cursor >= ' ' && *cursor <= '~')
diff --git a/c02/main.c b/c02/main.c
index 2e08801..1e41286 100644
--- a/c02/main.c
+++ b/c02/main.c
@@ -1,80 +1,98 @@
#include <stdio.h>
+#include <string.h>
#include <limits.h>
#include "ex00/ft_strcpy.c"
#include "ex01/ft_strncpy.c"
-/*#include "ex02/ft_str_is_alpha.c"*/
-/*#include "ex03/ft_str_is_numeric.c"*/
-/*#include "ex04/ft_str_is_lowercase.c"*/
-/*#include "ex05/ft_str_is_uppercase.c"*/
-/*#include "ex06/ft_str_is_printable.c"*/
-/*#include "ex07/ft_strupcase.c"*/
-/*#include "ex08/ft_strlowercase.c"*/
+#include "ex02/ft_str_is_alpha.c"
+#include "ex03/ft_str_is_numeric.c"
+#include "ex04/ft_str_is_lowercase.c"
+#include "ex05/ft_str_is_uppercase.c"
+#include "ex06/ft_str_is_printable.c"
+#include "ex07/ft_strupcase.c"
+#include "ex08/ft_strlowcase.c"
#include "ex09/ft_strcapitalize.c"
#include "ex10/ft_strlcpy.c"
#include "ex11/ft_putstr_non_printable.c"
int main()
{
- /*char *last;*/
- /*char dest[13];*/
- /*char src[] = "aonjour asdf\0 asdf";*/
- /*last = ft_strcpy(dest, src);*/
- /*for (int i = 0; i < 13; i++)*/
- /*printf("%d ", dest[i]);*/
- /*printf("last %d", *last);*/
- /*printf("\n%s\n", dest);*/
+ char dest[13];
+ char src[] = "aonjour asdf\0 asdf";
+ ft_strcpy(dest, src);
+ for (int i = 0; i < 13; i++)
+ printf("%d ", dest[i]);
+ printf("\n%s\n", dest);
+ strcpy(dest, "");
+ strcpy(dest, src);
+ for (int i = 0; i < 13; i++)
+ printf("%d ", dest[i]);
+ printf("\n%s\n", dest);
- /*char ndest[10];*/
- /*char nsrc[20] = "bonjour jew\0";*/
- /*last = ft_strncpy(ndest, nsrc, sizeof ndest);*/
- /*for (int i = 0; i < sizeof ndest; i++)*/
- /*printf("%d ", ndest[i]);*/
- /*printf("dest %d, last %d", ndest, last);*/
- /*printf("\n%s\n", ndest);*/
+ char ndest[15];
+ char nsrc[20] = "bonjour jew\0";
+ ft_strncpy(ndest, nsrc, sizeof ndest);
+ for (int i = 0; i < sizeof ndest; i++)
+ printf("%d ", ndest[i]);
+ printf("\n%s\n", ndest);
+ strncpy(ndest, "eqwrwer", sizeof ndest);
+ strncpy(ndest, nsrc, sizeof ndest);
+ for (int i = 0; i < sizeof ndest; i++)
+ printf("%d ", ndest[i]);
+ printf("\n%s\n", ndest);
- /*char salpha[] = "BONJour";*/
- /*char snalpha[] = "bonJour";*/
- /*printf("%d salpha\n", ft_str_is_alpha(salpha));*/
- /*printf("%d snalpha\n", ft_str_is_alpha(snalpha));*/
+ char salpha[] = "BONJour";
+ char snalpha[] = "bonJ our";
+ printf("%d salpha\n", ft_str_is_alpha(salpha));
+ printf("%d snalpha\n", ft_str_is_alpha(snalpha));
- /*char num[] = "0123456789";*/
- /*char nnum[] = "0123456789a";*/
- /*printf("%d num\n", ft_str_is_numeric(num));*/
- /*printf("%d nnum\n", ft_str_is_numeric(nnum));*/
+ char num[] = "0123456789";
+ char nnum[] = "0123456789 ";
+ printf("%d num\n", ft_str_is_numeric(num));
+ printf("%d nnum\n", ft_str_is_numeric(nnum));
- /*char low[] = "bonjour";*/
- /*char nlow[] = "bonjOUR";*/
- /*printf("%d low\n", ft_str_is_lowercase(low));*/
- /*printf("%d nlow\n", ft_str_is_lowercase(nlow));*/
+ char low[] = "";
+ char nlow[] = "bonjOUR";
+ printf("%d low\n", ft_str_is_lowercase(low));
+ printf("%d nlow\n", ft_str_is_lowercase(nlow));
- /*char up[] = "BONJOUR";*/
- /*char nup[] = "BonjOUR";*/
- /*printf("%d up\n", ft_str_is_uppercase(up));*/
- /*printf("%d nup\n", ft_str_is_uppercase(nup));*/
+ char up[] = "BONJOUR";
+ char nup[] = "BonjOUR";
+ printf("%d up\n", ft_str_is_uppercase(up));
+ printf("%d nup\n", ft_str_is_uppercase(nup));
- /*char printable[] = "boq4523$$%@$!``~~;'[[=_";*/
- /*char nprintable[] = "as^?\bf89*0(\n\r";*/
- /*printf("%d printable\n", ft_str_is_printable(printable));*/
- /*printf("%d nprintable\n", ft_str_is_printable(nprintable));*/
+ char printable[] = "boq4523$$%@$!``~~;'[[=_";
+ char nprintable[] = "as^?f89*0(\xff";
+ printf("%d printable\n", ft_str_is_printable(printable));
+ printf("%d nprintable\n", ft_str_is_printable(nprintable));
- /*char toup[] = "bonjourJE6''";*/
- /*char *upped = ft_strupcase(toup);*/
- /*printf("%s\n", upped);*/
+ char toup[] = "bonjourJE6''";
+ char *upped = ft_strupcase(toup);
+ printf("%s\n", upped);
- /*char tolow[] = "bonJOURJE6''";*/
- /*char *lowered = ft_strlowcase(tolow);*/
- /*printf("%s\n", lowered);*/
+ char tolow[] = "bonJOURJE6''";
+ char *lowered = ft_strlowcase(tolow);
+ printf("%s\n", lowered);
- /*char tocap[1024] = "salut, comment tu vas ? 42mots quarante-deux; cinquante+et+un";*/
- /*ft_strcapitalize(tocap);*/
- /*printf("%s\n", tocap);*/
+ char tocap[1024] = "sal_ut, cOMMENT tu vas ? 42mots quarante-deux; cinquante+et+un";
+ ft_strcapitalize(tocap);
+ printf("%s\n", tocap);
- /*char buf[40];*/
- /*char src[] = "bonjour qqq";*/
- /*printf("str len = %u", ft_strlcpy(buf, str, 40));*/
+ char a[] = "qweihroqwier";
+ char ldest[6];
+ char b[] = "qweqweeqwrqwer";
+ char lsrc[] = "qwroiqwer";
+ printf("len %u : ", ft_strlcpy(ldest, lsrc, sizeof ldest ));
+ for (int i = 0; i < 33; i++)
+ printf("%d ", ldest[i]);
+ printf("\n%s\n", ldest);
+ strlcpy(ldest, "", sizeof ldest);
+ printf("len %lu : ", strlcpy(ldest, lsrc, sizeof ldest));
+ for (int i = 0; i < 33; i++)
+ printf("%d ", ldest[i]);
+ printf("\n%s\n", ldest);
- /*char unp[10] = {10, 1, 2, 'a', 'g', '+', ' ', 20};*/
- /*ft_putstr_non_printable(unp);*/
+ char unp[10] = "bo\xfejou\x01\xaa";
+ ft_putstr_non_printable(unp);
char unp2[10] = {'\xff'};
for (int i = 0; i < 256; i++)
{