Point: PChar;
DataBuf: Array[0..6] of TBlock;Point := @DataBuf[0];我现在想把Point[0]的最高位屏蔽,请问应该怎么操作才能实现?

解决方案 »

  1.   

    Point[0] := Point[0] and $7F
      

  2.   

    Byte(Point[0]) := Byte(Point[0]) and $7F
      

  3.   

    Point[0] := chr((256+ord(Point[0])) and $7F);
      

  4.   


    p: PByte;
    DataBuf: Array[0..6] of TBlock;p:= @DataBuf[0];
    -------------------
    p^:= p^ and $7F;
      

  5.   

    指针用的不对吧?
    静态数组:
    var
      P: Pionter;
      MyBuf: Array[0..6] of Byte;
    begin
      P := @MyBuf;动态数组:
      P: Pionter;
      MyBuf: Array of Byte;
    begin
      P := @MyBuf[0];Delphi的静态数组和动态数组指针用法不一样的,楼主的是动态数组的用法。