/* ************************************************************************** */ /* */ /* ::: :::::::: */ /* ft_putstr_non_printable.c :+: :+: :+: */ /* +:+ +:+ +:+ */ /* By: tischmid +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2023/03/21 02:59:50 by tischmid #+# #+# */ /* Updated: 2023/03/28 16:10:51 by tischmid ### ########.fr */ /* */ /* ************************************************************************** */ #include #define HEX_ALPH "0123456789abcdef" void ft_putstr_non_printable(char *str) { while (*str) { if (*str < 32 || *str == 127) { write(1, "\\", 1); write(1, &HEX_ALPH[*(unsigned char *) str / 16], 1); write(1, &HEX_ALPH[*(unsigned char *) str % 16], 1); } else write(1, str, 1); ++str; } } /* //// #include #define BUFSIZE 256 int main(void) { char s1[BUFSIZE]; for (int i = -128; i < 128; ++i) { s1[i + 128] = i ? i : 1; } ft_putstr_non_printable(s1); return (0); } */ ////