一个关于网络数据包捕获程序的问题(显示数据16进制码)
部分代码如下:
char *ptr = p.pContent;//将捕获到的数据包的内容赋给ptr
if (i%24==0&&i!=0)//每行显示24个字符
{
strcat(Buf,"\r\n");//换行,buf为存数据内容的缓冲区
}
if (ptr[i]=='\0')//判断第i个字符是不是结束符
{
strcat(Buf,"00 ");//在缓冲区的结尾补00
}
else
{
char temp[10] = {0};
sprintf(temp,"%02x ",ptr[i]);//格式化成16进制到temp中
我不明白的是:为什么如果遇到结束符就在尾部补00?有人知道不,在线等,跪求答案!!
+qq156011604说也行!