3 回答

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊
在現(xiàn)代Windows上,操作系統(tǒng)本身和默認(rèn)控制臺shell(CMD.EXE)至少在整個(gè)32位有符號整數(shù)范圍內(nèi)接受并顯示退出代碼。運(yùn)行上面的示例CMD.EXE會給出您要求的退出代碼:
> java ExitCode 2
> echo %errorlevel%
2
> java ExitCode 128
> echo %errorlevel%
128
> java ExitCode 255
> echo %errorlevel%
255
> java ExitCode 256
> echo %errorlevel%
256
> java ExitCode 65536
> echo %errorlevel%
65536
Windows并不真正具有Unix信號的概念,也沒有試圖劫持退出代碼以添加額外信息,因此只要你的shell(或任何程序最終讀取退出代碼)也不會這樣做,你應(yīng)該找回你退回的退出代碼。幸運(yùn)的是,使用Microsoft的C運(yùn)行時(shí)(包括使用MS Visual C ++編譯的所有程序)的程序保留退出代碼和退出進(jìn)程。

TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超4個(gè)贊
添加回答
舉報(bào)