您好,登錄后才能下訂單哦!
本篇內容主要講解“為什么運行VS2003會報錯”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“為什么運行VS2003會報錯”吧!
上回在公司運行VS 2003 突然彈出VS 2003 報錯的問題,在運行是發現了一個VS2003的Bug。直接導致6個VS 2003無法運行,需重新安裝,下面就說一下VS 2003的相關BUG。。
我在此先描述一下關于VS 2003的Bug,再討論 iostream 的Bug。
因為在對于此Bug的測試中,直接導致其6名同事的VS 2003 報錯,需要重裝。及 遙望 的VC 6 的完全損毀。
Part 1: 關于 Visual Studio 2003 Enterprise Architect 的 Bug:
在我發現 iostream 的一個懷疑是 Bug 的問題后,將其剝離出來,作為單獨的測試程序,發送給了 遙望(其又轉發至其同事)。據 遙望 反饋,他們的步驟如下:
1. 先建一空的 C++ 控制臺項目;
2. 向其中添加一個空的cpp文件;
3. 將我的代碼(隨后附上)拷貝進去;
4. 編譯。
之后鏈接器拋出兩個錯誤:
test error LNK2001: 無法解析的外部符號 _main
test fatal error LNK1120: 1 個無法解析的外部命令
之后所有的控制臺程序就都不能編譯,且發現,隨便在文件里寫什么,編譯單個文件的時候都不會報錯,但編譯整個工程的時候就還是那兩個錯誤” 我確定,在我的代碼中沒有任何語法錯誤。 于是我照著VS 2003 報錯其步驟試驗,果然拋出以上兩個錯誤。但幸好我其它的控制臺程序還可以正常編譯。
此后找人再試,編譯通過,沒有發現問題。于是話題轉移到了 iostream 的Bug 上。
于是,遂將該問題送至 MicroSoft。另外,不保證該錯誤肯定會出現,或導致VS 2003 報錯,但大家如果要試,仍請三思。畢竟,7個VS 2003,一個VC6, 一個VC2003 測試, 7個VS 2003 報錯,其中6個損毀;一個VC 6損毀,一個 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; }
到此,相信大家對“為什么運行VS2003會報錯”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。