请问一下的用法为什么不对?内存没有被赋为1 POINT *st;
st = new POINT[1];
memset(st, 1, _msize(st));

解决方案 »

  1.   

    不会吧.....
    总共8个Byte,应该每个Byte都为1
      

  2.   

    不是,如果memset(st, 0, _msize(st));可以清成0可是一换成1就清成一些莫名奇妙的数了。
      

  3.   

    memset就是将一个内存区全部设置成你指定的值。以字节为单位。
      

  4.   

    memset就是将一个内存区全部设置成你指定的值。以字节为单位。>>>>
    受益。一直用它,但还真没有很在意。
    哈哈。//把前 32 个 char(8 bit)设置成 1(ASCII 码) 
    char buffer[64];
    ::memset(buffer, 1, 32);//把前 32 个 char(8 bit)设置成 97(ASCII 码,对应的是 a ) 
    char buffer[64];
    ::memset(buffer, 97, 32);
      

  5.   

    如何用memset 把数组或指定的内存中的数据设成1?
      

  6.   

    //把前 64 个 char(8 bit)设置成 49(ASCII 码值,对应的是 字符是 1 ) 
    char buffer[64];
    ::memset(buffer, 49, 64);