计算字符数组长度,用strlen 与 sizeof 的原理与区别
遇到个坑,定义了一个字符数组
unsigned char buff[6];for(i=0;i<6;i++) { buff[i] = 0; }
然后用串口发送函数:
write(fd, buff, strlen(buff));
却发现串口一直未收到数据,原来是strlen遇到'\0'则结束计算长度。所以发送的数据一直为空。
关于sizeof与strlen的具体介绍:http://blog.csdn.net/sjtu_huang/article/details/6533140
strle是用来计算字符串长度,sizeof是用来计算字符数组长度, 字符串长度与字符数组不能完全划等价