大家好,我在做socket通讯时,接收shrot类型产生乱码,开发环境是delphi。如果把客户端改用java则没发现问题,请问是不是short的问题啊?可是我在其他地方用到short类型没出错呀。
传输的数据块如下:
  RePackPV=packed record
    packH:packHead;//也是记录体
    plen:SHORT;//问题就出在这里,定义成integer后,delphi客户端和服务端能正常通讯,改成short只能和java客户端通讯
    pv:array[0..100] of PVvale;
  end;请帮忙分析分析 

解决方案 »

  1.   

    是不是你客户端赋值的时候自动提升成了Integer;
      

  2.   

    我客户端的pvlen是这么写的  packPV.pvlen:=ShortInt (StrToInt(Edit4.text));请问会有问题吗
      

  3.   

    可能是哪个细节写错了,short应该不会读错的。断点调试看看
      

  4.   

    sz_haitao(解释型delphi?notes)你说的也许是对的。我后来采用动态数组(把静态数组换掉)就不存在short的问题,这个有点奇怪哦
      

  5.   

    我说的高低位的问题,是由于delphi和java的处理可能不一致导致的