Роль функции strlen(): подсчет длины заданной строки
Функция: Подсчитать количество символов в строке str, исключая '\0'
То есть, когда встречается символ '\0' , функция strlen() завершится (\0 не входит в длину)
Примечание. Разница между 0 и «0». Значение «0» равно 48.
Значение '\0' равно 0, а конец встречи '\0' - это конец встречи 0
Но это не конец случая '0'!
Пример 1:
#include<stdio.h>
#include<string.h>
int main() {
char s[]="hebeisheng\0\n";
printf("%d",strlen(s));
return 0;
}
Значение '\0' равно 0, а конец встречи '\0' - это конец встречи 0
Таким образом, учитывается только длина до \0
Пример 2:
Если мы добавим '\0' к строке
#include<stdio.h>
#include<string.h>
int main() {
char s[]="hebeisheng'\0'\n";
printf("%d",strlen(s));
return 0;
}
Окончательный результат равен 11, просто добавьте одинарную кавычку перед '\0', встреча с \0 все равно завершит функцию strlen
Пример 3:
При использовании функции strlen: обратите внимание на escape-символы, набор escape-символов считается длиной
Приложение: таблица escape-символов