簡(jiǎn)介VS2003報(bào)錯(cuò)詳細(xì)介紹
上回在公司運(yùn)行VS 2003 突然彈出VS 2003 報(bào)錯(cuò)的問題,在運(yùn)行是發(fā)現(xiàn)了一個(gè)VS2003的Bug。直接導(dǎo)致6個(gè)VS 2003無法運(yùn)行,需重新安裝,下面就說一下VS 2003的相關(guān)BUG。。
我在此先描述一下關(guān)于VS 2003的Bug,再討論 iostream 的Bug。
因?yàn)樵趯?duì)于此Bug的測(cè)試中,直接導(dǎo)致其6名同事的VS 2003 報(bào)錯(cuò),需要重裝。及 遙望 的VC 6 的完全損毀。
Part 1: 關(guān)于 Visual Studio 2003 Enterprise Architect 的 Bug: #t#
在我發(fā)現(xiàn) iostream 的一個(gè)懷疑是 Bug 的問題后,將其剝離出來,作為單獨(dú)的測(cè)試程序,發(fā)送給了 遙望(其又轉(zhuǎn)發(fā)至其同事)。據(jù) 遙望 反饋,他們的步驟如下:
1. 先建一空的 C++ 控制臺(tái)項(xiàng)目;
2. 向其中添加一個(gè)空的cpp文件;
3. 將我的代碼(隨后附上)拷貝進(jìn)去;
4. 編譯。
之后鏈接器拋出兩個(gè)錯(cuò)誤:
test error LNK2001: 無法解析的外部符號(hào) _main
test fatal error LNK1120: 1 個(gè)無法解析的外部命令
之后所有的控制臺(tái)程序就都不能編譯,且發(fā)現(xiàn),隨便在文件里寫什么,編譯單個(gè)文件的時(shí)候都不會(huì)報(bào)錯(cuò),但編譯整個(gè)工程的時(shí)候就還是那兩個(gè)錯(cuò)誤” 我確定,在我的代碼中沒有任何語法錯(cuò)誤。 于是我照著VS 2003 報(bào)錯(cuò)其步驟試驗(yàn),果然拋出以上兩個(gè)錯(cuò)誤。但幸好我其它的控制臺(tái)程序還可以正常編譯。
此后找人再試,編譯通過,沒有發(fā)現(xiàn)問題。于是話題轉(zhuǎn)移到了 iostream 的Bug 上。
于是,遂將該問題送至 MicroSoft。另外,不保證該錯(cuò)誤肯定會(huì)出現(xiàn),或?qū)е?FONT>VS 2003 報(bào)錯(cuò),但大家如果要試,仍請(qǐng)三思。畢竟,7個(gè)VS 2003,一個(gè)VC6, 一個(gè)VC2003 測(cè)試, 7個(gè)VS 2003 報(bào)錯(cuò),其中6個(gè)損毀;一個(gè)VC 6損毀,一個(gè) VC2003 平安。
其全部代碼如下:
- #include "windows.h"
- #include "iostream"
- using namespace std;
- /*
- FUNCTION DEFINITIONS: Bug Genesis
- */
- BOOL BugGenesis()
- {
- TCHAR szLinkString[MAX_PATH];
- ZeroMemory( szLinkString, MAX_PATH * sizeof( TCHAR ) );
- cout<<"If you input the \"wew; we;\",the bug will occur:"<<endl;
- cin>>szLinkString;
- cout<<"The Input String Are:"<<szLinkString<<endl;
- return TRUE;
- }
- /*
- FUNCTION DEFINITIONS: Main Functions
- */
- int main()
- {
- int iChooseNum = 0;
- cout<<"Iostream Bug:"<<endl;
- while( TRUE )
- {
- cout<<"1. Bug Genesis:"<<endl;
- cout<<"0. Exit;"<<endl;
- cout<<"Choice:";
- cin>>iChooseNum;
- if( !iChooseNum ) break;
- switch( iChooseNum )
- {
- case 1:
- BugGenesis();
- break;
- default:
- cout<<"Error Choice!"<<endl<<"Please Rechoose!"<<endl<<endl;
- break;
- }
- }
- return 0;
- }

















