Open mariosalembe23 opened 1 month ago
Embora o caractere null (\0) também tenha a representação visual de zero, ele possui um significado diferente dentro do contexto de programação.
O valor zero numérico (0) representa a ausência de quantidade. O caractere null (\0) indica o final de uma string, informando que não há mais caracteres a serem processados. A função bzero preenche a memória com zeros porque ela quer apagar qualquer valor que possa estar presente naquela região. Como o valor zero representa a ausência de valor, ele é ideal para sobrescrever qualquer dado existente.
Por exemplo, se você tiver um buffer de caracteres em C e usar bzero para limpá-lo, cada byte desse buffer será definido como 0, não como '\0'.
Sendo assim, sugiro que ft_bzero.c seja:
#include "libft.h"
void ft_bzero(void *s, size_t n)
{
ft_memset(s, 0, n);
}
Neste arquivo, vamos explorar várias funções da linguagem C, explicando o que cada uma faz, seu retorno e sua prototipagem.
int isalpha(int ch);
int isdigit(int ch);
int isalnum(int ch);
int isascii(int ch);
int isprint(int ch);
size_t strlen(const char *str);
void *memset(void *ptr, int value, size_t num);
bzero
, pois foi descontinuada. Use memset
no lugar.void *memcpy(void *dest, const void *src, size_t n);
void *memmove(void *dest, const void *src, size_t n);
size_t strlcpy(char *dest, const char *src, size_t size);
size_t strlcat(char *dest, const char *src, size_t size);
int toupper(int ch);
int tolower(int ch);
char *strchr(const char *str, int c);
char *strrchr(const char *str, int c);
int strncmp(const char *str1, const char *str2, size_t num);
void *memchr(const void *ptr, int value, size_t num);
int memcmp(const void *ptr1, const void *ptr2, size_t num);
char *strnstr(const char *str, const char *substr, size_t len);
int atoi(const char *str);
char *strdup(const char *str);
void *calloc(size_t num, size_t size);
https://github.com/mariosalembe23/42-Libft