VC6 + sp5, 一直用着没问题,这两天突然一下就这样了,vc7.1同时也出这样的问题,在调试的时候,在任何一个函数上下断点,F11跟进去的时候都会弹这个消息,程序肯定没问题,我写了个测试代码(如下),是个win32 console程序,用和不用MFC我都测过了,都一样,跟进Func1函数时就弹这个消息了,接着就进入了汇编模式,当前代码是int 3, 在我的工程里面,有的函数中断后(同样的消息),继续按F10还是弹这个消息,n多次都没办法进这个函数,无法再调试了,我重装了vc6,vc7都没用,又不想重装系统。在网上找了很久,但大多数是说代码有问题,一般来说指针越界什么的,但下面这段代码没看见哪有问题啊?哪位好心的大侠能帮我解决这个问题啊,郁闷好几天了int Func1 (int a, int b)
{
return (a+b);
}int main(int argc, char* argv[])
{
int a, b, c=0;
a = 5;
b = 7;
c = Func1 (a, b); // 在这里下断点,F11跟进函数
printf ("%d\n", c);
return 0;
}
{
return (a+b);
}int main(int argc, char* argv[])
{
int a, b, c=0;
a = 5;
b = 7;
c = Func1 (a, b); // 在这里下断点,F11跟进函数
printf ("%d\n", c);
return 0;
}
这个以前也见过,是装了softice有冲突。
--- E:\Workspace\Test\t5\t5.cpp -------------------------------------------------------------------------------------------
1: // t5.cpp : Defines the entry point for the console application.
2: //
3:
4: #include "stdafx.h"
5:
6: int Func1 (int a, int b)
7: {
00401020 push ebp
00401021 mov ebp,esp
00401023 sub esp,40h
00401026 push ebx
00401027 push esi
00401028 push edi
00401029 lea edi,[ebp-40h]
0040102C mov ecx,10h
00401031 mov eax,0CCCCCCCCh
00401036 rep stos dword ptr [edi]
8: return (a+b);
00401038 mov eax,dword ptr [ebp+8]
0040103B add eax,dword ptr [ebp+0Ch]
9: }
0040103E pop edi
0040103F pop esi
00401040 pop ebx
00401041 mov esp,ebp
00401043 pop ebp
00401044 ret