当前位置: 代码迷 >> Rational >> purify API的使用,该如何处理
  详细解决方案

purify API的使用,该如何处理

热度:4712   发布时间:2013-02-26 00:00:00.0
purify API的使用

char a[10];
cout << PurifyIsInitialized(a, 10) << endl;//Checks whether a memory block is initialized.

理论上将这个时候a应该是没初始化的啊.
但是输出确是 1.

而且api给的例子 也和例子说的结果不一样,两个地方都是输出的1
void main()

{
  char *chunk;
  HANDLE hHeap;
  hHeap = GetProcessHeap();
  chunk = (char *)HeapAlloc(hHeap, HEAP_GENERATE_EXCEPTIONS, 15);
  printf("IsInitialized(chunk, 1)? %d\n",
  PurifyIsInitialized(chunk, 1)); /* 0 */

  strcpy(chunk, "Hello");
  printf("IsInitialized(chunk, 1)? %d\n",
  PurifyIsInitialized(chunk, 1)); /* 1 */
}






------解决方案--------------------------------------------------------
是VC吗?你运行一下RELEASE版的程序试试看。
------解决方案--------------------------------------------------------
我用的是2003的!

上面有例子的!

对于java的api是好用的!