unsigned char 是无符号字符变量,不是字符串,长度为一字节。
strlen的参数必须是字符串,即以'\0'结尾的字符数组。
对于unsigned char c[100]来说,要想用strlen(c)求出c的长度,就必须在数组末尾加'\0'字符。可以直接读写指定数组元素,如c[50]='\0',也可以在定义时初始化成字符串,如
unsigned char c[100]="hello,world!";
编译器会自动在感叹号后面一个数组元素写入'\0'。
sizeof(s)就可以得到s的长度。strlen()函数从s开始一直统计到有NULL或'\0'的字符为止的字节数。
strlen( (char*)s );
sizeof(unsigned char)
_mbslen