對編譯時和運行時的理解

對於編程背景經驗較少的人,很難去理解編譯時和運行時的概念。

爲了幫助我們更好地理解這些概念,我們可以藉助一些問題:

1.程序滿足了什麼樣的不變性?

2.在該階段會報什麼錯?

3.如果當前階段成功,我們可以知道些什麼?

4.他們的輸入輸出是什麼?


編譯時:

1.不需要滿足任何不變性。事實上,你都不需要良好的編程。

2.在編譯時會報什麼錯:

    a.語法錯誤

    b.類型檢查錯誤

    c.編譯器崩潰(罕見)

3.如果編譯成功,我們可以知道什麼?

    a.程序已經編譯成形

    b.我們可以啓動程序

4.輸入,輸出是什麼?

     a.輸入是指,程序在 成功編譯後,被添加的頭文件,接口,庫,這些都是在編譯時需要被添加進去的。

     b.輸出可以指需要裝配的代碼,也可以是一個能夠執行的程序。如果編譯失敗,那輸出就是一串串錯誤信息。


運行時:

1.我們對程序的不變性一無所知。它們是程序調入的任何值。

2.在運行時可對出現的錯誤:

    a.除以0;

    b.引用一個空指針

    c.內存溢出。

3.如果在運行時能成功,那麼程序能正常執行且不會異常退出。

4.輸入,輸出完全取決於程序員。它可以是文件的獲取,屏幕上的窗口,網絡數據包,文件的打印。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章