size_t strlen(char const *string);
返回值:无符号整型
该函数返回一个非负数值,因此在使用时需多加注意。
例如:
bool flag=strlen(“123”)> -1;
cout<<flag;
打印结果:
false
这是因为在有符号数和无符号数的比较过程中,有符号数会转变成无符号数,而-1的无符号表示的值为最大,所以flag==false。使用strlen()函数时需要注意。
sizeof操作符也返回无符号数,sizeof(int)<-1结果为真。