char数组需要再头尾添加特殊符号,用来通讯,数据中存在ASCII码为00的数据 该怎么解决,多谢

char数组需要再头尾添加特殊符号,用来通讯,数据中存在ASCII码为00的数据 该如何解决,谢谢!
Status1=ICPowerOn(Temp);
  FPShareStruct->ParaData[i].iResult=Status1;
  char l_num[20];
  sprintf(l_num,"Status1[%d]",FPShareStruct->ParaData[i].iResult);
  LogTxt(0,l_num);
  char Tmp[1025];
  char Temp20[1000];
  memcpy(Temp20,Temp,Status1);
  sprintf(Tmp,"%d%c%s%c",1,'|',Temp20,'|');
  lstrcpy(FPShareStruct->ParaData[i].outData,Tmp);
  LogTxt(0,FPShareStruct->ParaData[i].outData);
  memcpy(FPShareStruct->ParaData[i].outData,Temp,Status1);
  FPShareStruct->ParaData[i].procStat=2;


Temp 中的数据为3B 6D 00 00 80 31 80 65 B0 84 01 00 C8 83 00 90 00
通过%s转换  只能把3B  6D传过去

------解决方案--------------------
从你代码中看不确实 Status1 是不是是Temp的长度 。
Status是如何获取的,看看这个值是不是正确也要调试一下看看
------解决方案--------------------
引用:
引用:从你代码中看不确实 Status1 是不是是Temp的长度 。
Status是如何获取的,看看这个值是不是正确也要调试一下看看

2013-01-09 16:04:44. 31[BN0]Status1[17]
2013-01-09 16:04:44. 31[BN0]1
------解决方案--------------------
;m
2013-01-09 16:04:44. 31[……

我怎么感觉像是没有完整的输出出来呢...