diff options
| -rw-r--r-- | c02/ex00/ft_strcpy.c | 4 | ||||
| -rw-r--r-- | c02/ex02/ft_str_is_alpha.c | 11 | ||||
| -rw-r--r-- | c02/ex03/ft_str_is_numeric.c | 9 | ||||
| -rw-r--r-- | c02/ex04/ft_str_is_lowercase.c | 9 | ||||
| -rw-r--r-- | c02/ex05/ft_str_is_uppercase.c | 9 | ||||
| -rw-r--r-- | c02/ex07/ft_strupcase.c | 11 | ||||
| -rw-r--r-- | c02/ex08/ft_strlowcase.c (renamed from c02/ex08/ft_strlowercase.c) | 9 | ||||
| -rw-r--r-- | c02/ex10/ft_strlcpy.c | 27 | ||||
| -rw-r--r-- | c02/ex11/ft_putstr_non_printable.c | 8 | ||||
| -rw-r--r-- | c02/main.c | 130 |
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 <= '~') @@ -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++) { |
