在写程序的时候,遇到一个很奇怪的问题:
我定义一个 布尔型变量,名字为: GetSuccess然后在程序需要的地方(在很多个地方都试过了)给这个变量赋值:GetSuccess=TRUE;保存后编译没错,但是一运行程序,就出现内存不可读的错误
(就是弹出个对话框,说"xxx"指令引用的"XXXXXX"内存不可读);为什么?难道 GetSuccess 这个名字已经被VC++作为保留字了? 是不是?

解决方案 »

  1.   

    bool GetSuccess还是BOOL GetSuccess ?//按你的TRUE应该是BOOL
      

  2.   


    我定义的是: BOOL GetSuccess 
      

  3.   

    还是先别那么肯定的好rebuild一次看看还有没有问题
      

  4.   

    调试一下停在GetSuccess=TRUE; //看GetSuccess地址是不是0?
      

  5.   

    如果你怀疑是GetSuccess变量名得问题,随便换个名字看看你得问题是不是还出现不就验证了?不过根据我经验,101%不是这个问题,而是因为你程序有其他错误,增加一个变量就把那个问题暴露出来了,许多内存访问越界问题都是这样得
      

  6.   

    没试过,明天试试看。不过俺基本同意7楼的意见。除非你还在其他地方定义了GetSuccess为一个指针,二者的作用域重叠。
      

  7.   


    函数A()内部调用B(),直接B()不行么?
    抑或是俺没听懂?
      

  8.   


    呵呵,那个函数要先设为 static 类型才可以这样调用的!谢谢啦!!!