strlen获得char数组长度不正确的问题
我使用十六进制数据初始化一个字符串数组
```
char key[16] = { 0x5E, 0x74, 0x52, 0x61, 0x77, 0x4F, 0xC2, 0x1F, 0x6A, 0x5B, 0xBE, 0x6D, 0xEB, 0x2C, 0x94, 0x56};
```
但是其后使用strlen()的时候却不能获得正确的值,原本是16个,结果却多了很多。查找过后觉得是因为字符串结尾编码是0x00,但是编译器在字符串0x56的位置后没有找到0x00,就继续往下找,直到遇到0x00为止。但是我因该怎么用十六进制数来正确处理呢?后来发现其实只要将字符串多加一位,并在末尾添加0x00就可以让编译器正确识别了。