char *address;
int intBytesReceived;
typedef struct tagSPS { //定义结构
char timemask[10]; //品名
char Source[25]; //源IP地址
char destination[25]; //目的ip地址
char size[10]; //大小
char type[15]; //类型
char info[10];
char data[8192];
int length;
} SPS;
SPS Sps[1];
for(i = 0 ;i <intBytesReceived;i++)
Sps[0].data[i] =*(BYTE*)(address+i);这样为什么不能将address指向的字符都存进data[i]?????很多字符用02x格式显示出来时候成了00.为什么??void CPacket::OnButton1()
{ int c= 0 ,j=0,tail = 0;
int k = 0;
char dddd[8192];
char ddd[128];char tmp[8];
while(c<m_intLength)
{
k++;
int j;
sprintf(ddd,"%08X:",c);//写地址
for (j=0;j<16;j++)
{
sprintf(tmp," %02X",0xFF & packet_value[c+j]);
if( 7==j ) strcat(tmp," ");
strcat(ddd,tmp);
}
strcat(ddd," ; ");
for (j=0;j<16;j++)
{
if(isprint(0xFF & packet_value[c+j]))
{
tmp[0]=packet_value[c+j];tmp[1]=0;
}
else
tmp[0]='.';tmp[1]=0;
strcat(ddd, tmp);
}
strcat(dddd,ddd);
strcat(dddd,"\n");
c = k*16;
} //读最后字节(不能被16整除剩下的)
tail = m_intLength - (c-16);
if((tail>0)&&(tail<16))
{
sprintf(ddd,"%08X:",c);//写地址
for (j=0;j<tail;j++)
{
sprintf(tmp," %02X",0xFF & packet_value[c+j]);
if( 7==j ) strcat(tmp," ");
strcat(ddd,tmp);
}
strcat(ddd," ; ");
for (j=0;j<tail;j++)
{
if(isprint(0xFF & packet_value[c+j]))
{
tmp[0]=packet_value[c+j];tmp[1]=0;
}
else
tmp[0]='.';tmp[1]=0;
strcat(ddd, tmp);
}
strcat(dddd,ddd); } CString kk;
kk.Format("%s",dddd);
MessageBox(kk,"LDF");
m_packet = kk;
UpdateData(FALSE);
}
int intBytesReceived;
typedef struct tagSPS { //定义结构
char timemask[10]; //品名
char Source[25]; //源IP地址
char destination[25]; //目的ip地址
char size[10]; //大小
char type[15]; //类型
char info[10];
char data[8192];
int length;
} SPS;
SPS Sps[1];
for(i = 0 ;i <intBytesReceived;i++)
Sps[0].data[i] =*(BYTE*)(address+i);这样为什么不能将address指向的字符都存进data[i]?????很多字符用02x格式显示出来时候成了00.为什么??void CPacket::OnButton1()
{ int c= 0 ,j=0,tail = 0;
int k = 0;
char dddd[8192];
char ddd[128];char tmp[8];
while(c<m_intLength)
{
k++;
int j;
sprintf(ddd,"%08X:",c);//写地址
for (j=0;j<16;j++)
{
sprintf(tmp," %02X",0xFF & packet_value[c+j]);
if( 7==j ) strcat(tmp," ");
strcat(ddd,tmp);
}
strcat(ddd," ; ");
for (j=0;j<16;j++)
{
if(isprint(0xFF & packet_value[c+j]))
{
tmp[0]=packet_value[c+j];tmp[1]=0;
}
else
tmp[0]='.';tmp[1]=0;
strcat(ddd, tmp);
}
strcat(dddd,ddd);
strcat(dddd,"\n");
c = k*16;
} //读最后字节(不能被16整除剩下的)
tail = m_intLength - (c-16);
if((tail>0)&&(tail<16))
{
sprintf(ddd,"%08X:",c);//写地址
for (j=0;j<tail;j++)
{
sprintf(tmp," %02X",0xFF & packet_value[c+j]);
if( 7==j ) strcat(tmp," ");
strcat(ddd,tmp);
}
strcat(ddd," ; ");
for (j=0;j<tail;j++)
{
if(isprint(0xFF & packet_value[c+j]))
{
tmp[0]=packet_value[c+j];tmp[1]=0;
}
else
tmp[0]='.';tmp[1]=0;
strcat(ddd, tmp);
}
strcat(dddd,ddd); } CString kk;
kk.Format("%s",dddd);
MessageBox(kk,"LDF");
m_packet = kk;
UpdateData(FALSE);
}
解决方案 »
- 怎样判断一个程序是否在执行
- 最简单的ocx控件放到服务器上web打开失败,而本地ok
- 求解曲面曲率的问题,请各位高手帮忙解答!
- 请问,如何利用IHTMLELEMENT 获得本地.html文件并且提取其中内容?
- 问一个基本问题?
- ◆◆◆◆◆◆今是我生日::特意来散分~~~◆◆◆^-^有者有分~◆◆◆
- 怎样编程控制U盘的安全拔出
- 我想做一个类似windows里的资源管理器.................
- c++的一个小问题
- 根据 Xtreme Toolkit Pro 用户手册创建的停靠面板不显示
- set_terminate与MFC 7.0的问题
- 我想知道用vc写出来的界面,能和delphi写的连接起来吗?
(1).确认address所指向的字符串没有错误;
(2).确认向Sps[0].data复制字符串的时候没有错误;
(3).确认显示Sps[0].data的时候,没有错误