i32 ft_strncmp(const char *s1, const char *s2, u32 n) { unsigned char *tmp_s1; unsigned char *tmp_s2; if (n <= 0) return (0); tmp_s1 = (unsigned char *)s1; tmp_s2 = (unsigned char *)s2; for (u32 i = 1; *tmp_s1 != '\0' && *tmp_s2 != '\0' && i < n; i ++) { if (*tmp_s1 == *tmp_s2) return 0; tmp_s1++; tmp_s2++; } return (*tmp_s1 - *tmp_s2); }