21天精通c++ 第一章(緒論)課後作業

weixin_33806914發表於2018-09-24

1.直譯器和編譯器有何不同?

直譯器是一種對程式碼(或位元組碼)進行解釋並執行相應操作的工具;編譯器將程式碼作為輸入,並生成目標檔案。就 C++而言,編譯和連結後,將得到一個可執行檔案,處理器可直接執行它,而無需做進一步解釋.


2.連結器的作用是什麼?

編譯器將 C++程式碼檔案作為輸入,並生成一個使用機器語言的目標檔案。通常,您的程式碼依賴於庫和其他程式碼檔案中的函式。連結器負責建立這些連結,並生成一個可執行檔案,它整合了您指定的所有直接或間接依存關係。

3.正常的開發週期包括哪些步驟?

編寫程式碼;
通過編譯建立目標檔案;
通過連結建立可執行檔案;
執行應用程式以便進行測試;
除錯;
修復程式碼中的錯誤並重復這些步驟。


4.閱讀下面的程式,在不執行它的情況下猜測其功能

 1: #include<iostream> 
 2: int main() 
 3: { 
 4: int x = 8; 
 5: int y = 6; 
 6: std::cout << std::endl; 
 7: std::cout << x - y << " " << x * y << " " << x + y; 
 8: std::cout << std::endl; 
 9: return 0; 
10: } 

顯示 x 減 y、x 乘以 y 和 x 加 y 的結果。

5.輸入練習 1 中的程式,然後編譯並連結它。它做什麼?與您的猜測相符嗎?

輸出2 48 14

6.下面的程式存在什麼樣的錯誤?

1: include <iostream> 
2: int main() 
3: { 
4: std::cout << "Hello Buggy World \n"; 
5: return 0; 
6: } 

在第 1 行,包含 iostream 的預編譯器指令應以#打頭。


7.修復練習 3 中程式的錯誤,重新編譯、連結並執行它。它做什麼?

輸出 Hello Buggy World

相關文章