1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
/// # strlen /// Returns str.len(). /// /// This function has no reason to exist. /// /// ## Example /// ``` /// assert_eq!(ft::strlen("abc"), 3); /// assert_eq!(ft::strlen("\0bc"), 3); /// ``` pub fn strlen(s: &str) -> usize { return s.len(); } /// # strlen_naive /// Returns amount of sumbols to first null-symbol in the string. /// /// ## Example /// ``` /// assert_eq!(ft::strlen_naive("abc"), 3); /// assert_eq!(ft::strlen_naive("a\0c"), 1); /// ``` pub fn strlen_naive(s: &str) -> usize { let c: Vec<char> = s.chars().collect(); let mut i: usize = 0; while i < c.len() && c[i] != '\0' { i += 1; } return i; }