終于明白了tc編譯的dos程序和vc編譯的win32控制臺(tái)程序的區(qū)別
更新時(shí)間:2007年09月06日 08:33:25 作者:
它們有著本質(zhì)的區(qū)別:1:一個(gè)是16的DOS程序,一個(gè)是標(biāo)準(zhǔn)的32的Windows應(yīng)用程序.前者依然受著64KB內(nèi)存分段約束,后者無(wú)憂無(wú)慮地使用著4GB內(nèi)存地址空間.它們本來(lái)就是運(yùn)行在不同的操作系統(tǒng)上的.別把他們混淆.DOS程序可以運(yùn)行在windows上是因?yàn)橛蠳TVDM.而你把VC生成的控制臺(tái)程序放到DOS下只會(huì)得到!?This program cannot be run in DOS mode.2:如果你是用標(biāo)準(zhǔn)庫(kù)編寫的話,代碼應(yīng)該沒(méi)多大差異的.但執(zhí)行時(shí)調(diào)用庫(kù)方式卻差天共地.前者通過(guò)API模擬出一個(gè)執(zhí)行環(huán)境,后者是直接調(diào)用WIN32 API的.3:TC里面編寫程序確實(shí)是可以調(diào)用中斷,可是這個(gè)中斷不是直接執(zhí)行的.是NTVDM提供的.在NT的世界里.ring3不太可能直接調(diào)用中斷的.4:VC6(早期版本就不知道了)不能編寫DOS程序,只能編寫控制臺(tái)程序,注意,這只不過(guò)是Win32程序只使用控制臺(tái)這個(gè)標(biāo)準(zhǔn)輸入輸出而已.控制臺(tái)程序照樣可以彈出個(gè)窗口,也可以有消息循環(huán),窗口程序照樣可以有個(gè)控制臺(tái).
您可能感興趣的文章:
- java.lang.UnsatisfiedLinkError: %1 不是有效的Win32應(yīng)用程序錯(cuò)誤解決
- C語(yǔ)言+win32api寫窗體應(yīng)用程序
- VC程序在Win32環(huán)境下動(dòng)態(tài)鏈接庫(kù)(DLL)編程原理
- 實(shí)例分析一個(gè)簡(jiǎn)單的Win32程序
- WIN32程序獲取父進(jìn)程ID的方法
- 木馬程序Trojan-Spy.Win32.Agent.cfu清除方法
- tc編譯的dos程序和vc編譯的win32控制臺(tái)程序的異同
- Win32 程序在啟動(dòng)時(shí)如何激活前一個(gè)啟動(dòng)程序的窗口
相關(guān)文章
用智能abc的朋友進(jìn)來(lái)看看,怎么為它提速
用智能abc的朋友進(jìn)來(lái)看看,怎么為它提速...2006-12-12
20070910更新的火車采集器3.2正式版發(fā)布下載
20070910更新的火車采集器3.2正式版發(fā)布下載...2007-09-09

