strlen获取字符数组为什么是255

为什么是255呢?

strlen函数的规则是,读取到0则判断字符串结束。

char为1字节,只有8位。

所以......

-1就是  1111 1111,

-2就是  1111 1110,

直到-128:  1000 0000,

接着127:    0111 1111,

最后到0:    0000 0000。

这段程序运行输出-1~-128,然后是127~0。

128+127=255。

解决!

原文地址:https://www.cnblogs.com/pta00/p/13086149.html