tc編譯的dos程序和vc編譯的win32控制臺程序的異同
更新時間:2007年08月07日 09:59:27 作者:
它們有著本質(zhì)的區(qū)別:1:一個是16的DOS程序,一個是標準的32的Windows應用程序.前者依然受著64KB內(nèi)存分段約束,后者無憂無慮地使用著4GB內(nèi)存地址空間.它們本來就是運行在不同的操作系統(tǒng)上的.別把他們混淆.DOS程序可以運行在windows上是因為有NTVDM.而你把VC生成的控制臺程序放到DOS下只會得到!?This program cannot be run in DOS mode.2:如果你是用標準庫編寫的話,代碼應該沒多大差異的.但執(zhí)行時調(diào)用庫方式卻差天共地.前者通過API模擬出一個執(zhí)行環(huán)境,后者是直接調(diào)用WIN32 API的.3:TC里面編寫程序確實是可以調(diào)用中斷,可是這個中斷不是直接執(zhí)行的.是NTVDM提供的.在NT的世界里.ring3不太可能直接調(diào)用中斷的.4:VC6(早期版本就不知道了)不能編寫DOS程序,只能編寫控制臺程序,注意,這只不過是Win32程序只使用控制臺這個標準輸入輸出而已.控制臺程序照樣可以彈出個窗口,也可以有消息循環(huán),窗口程序照樣可以有個控制臺.
相關(guān)文章
C語言函數(shù)傳遞數(shù)組和傳遞地址的區(qū)別你知道嗎
這篇文章主要介紹了C語言中數(shù)組作為函數(shù)的參數(shù)以及返回值的使用簡單入門,這里以一維數(shù)組作為基本條件進行例子講解,需要的朋友可以參考下2021-09-09C語言詳細分析講解關(guān)鍵字enum與sizeof及typedef的用法
在?C?語言中經(jīng)常會見到?enum、sizeof、typedef,那么我們今天就來講解下它們?nèi)齻€,enum是C語言中的一種自定義類型,它是一種枚舉類型,sizeof是編譯器的內(nèi)置指示符,用于計算類型或變量所占內(nèi)存打小,typedef用于給一個已經(jīng)存在的數(shù)據(jù)類型重命名,本質(zhì)上不能產(chǎn)生新的類型2022-04-04