这个程序为什么总是出错?
在这个代码中为什么加上这句话就会出错:strcpy(a,s);int CSCommTestDlg::String2Hex( CString str, CByteArray &senddata)//.发送十六进制字符
{
int hexdata,lowhexdata;
int hexdatalen=0;
int len=str.GetLength();
senddata.SetSize(len/2);
for(int i=0;i<len;)
{
char lstr,hstr=str[i];
if(hstr==' ')
{
i++;
continue;
}
i++;
if(i>=len)
break;
lstr=str[i];
char a[1];
char s[10];
int j;
for(j=0;j<100;j++)
{
//scanf("%s",s);
//strcpy(a,s);
// ("%X%X\n",hstr=(unsigned char)a[0],lstr=(unsigned char)a[1]);
}
//return 0
hexdata=ConvertHexChar(hstr);
lowhexdata=ConvertHexChar(lstr);
if((hexdata==16)||(lowhexdata==16))
//if((hexdata!=16)||(lowhexdata!=16))
break;
else
hexdata=hexdata*16+lowhexdata;
i++;
senddata[hexdatalen]=(char)hexdata;
hexdatalen++;
}
senddata.SetSize(hexdatalen);
return hexdatalen;
}