第一章C++:函數傳回值、GNU編譯器命令

來源:互聯網
上載者:User

函數傳回值

  • 傳回值類型必須和函數的傳回型別相同

  • 對於main函數,傳回值必須是int型。大多數系統中,main函數的傳回值是一個狀態指示器。傳回值為0表示main函數成功執行完畢;返回非零表示有錯誤出現。

GNU編譯器命令

  • vi:建立檔案,i:編輯;Esc退出編輯;wq/ZZ:儲存並退出

  • g++ XX.cc -o XX:編譯XX.cc並產生可執行檔XX。

    ./XX:運行可執行檔XX

  • echo $?:執行程式後,訪問main函數傳回值,以此擷取狀態。

輸入輸出iostream

iostream庫,輸入資料流(istream)和輸出資料流(ostream)

  • 標準輸入:cin

  • 標準輸出:cout

  • cerr:標準錯誤,用來輸出程式警告和錯誤資訊。

  • clog:用於產生程式執行的一般資訊。

1.預先處理指示:#include

2. 寫入到流

  • 輸出操作符:<<,每個輸出操作符執行個體都接受兩個運算元,左運算元必須是ostream對象,右運算元是需要輸出的值。

  • 操縱符(manipulator)endl:將它寫入輸出資料流,具有換行輸出的效果,並重新整理與裝置相關聯的緩衝區(buffer),使使用者可以立即看到寫入到流中的輸出。

3.使用標準庫中的名字,如std::cout,std::endle

  • 表示cout和endl是定義在命名空間(namespace)std中的

  • 範圍操作符(scope operator,::操作符)

4.讀入流,如std::cin >> v1 >> v2;

  • 輸入操作符:>>

5.注釋

  • 注釋界定符(/**/)不能嵌套

  • 注釋程式碼片段時最好用單行注釋的方式(//)

讀入未知數目的輸入

  • 對使用者指定的一組數求和,一直讀取直到輸入結束。

int val;//read until end-of-file*/while(std::cin >> val){    ......}
  • 使用istream對象作為條件,結果是測試流的狀態。如果流是有效,那麼測試成功;如果遇到檔案結束符(end-of-file)或者輸入是無效的(如果讀取的不是一個整數值,則istream對象是無效的),將導致測試失敗。

  • 從鍵盤輸入檔案結束符:unix中檔案結束符Ctrl+D,相當於windows中vc++ 的.c檔案裡的(Ctrl+Z+Enter)*2。註:代碼中不需要EOF。

  • 在for迴圈中定義的變數,只能在for迴圈中存在,迴圈結束後是不能使用的。

  • “編輯-編譯-調試”,修改了一個錯誤或一小部分錯誤之後,就立即重新編譯代碼。

  • 標準庫的標頭檔用角括弧<>括起來,非標準庫的標頭檔用雙引號”“括起來。

  • 成員函數(member function),也稱為類方法。調用成員函數,使用點操作符(.)。

  • 叫用作業符:()。

使用檔案重新導向

$ addaItems <infile> outfile
  • 加法程式已經編譯為addItems的可執行檔,上述命令會從一個名為infile的檔案讀取記錄,並將結果輸出到一個名為outfile的檔案上。

術語

  • argument(實參):傳遞給被調用函數的值

  • block(塊):花括弧括起來的語句序列

  • main function(主函數):執行C++程式時,作業系統調用的函數。每個程式有且僅有一個主函數main

  • manipulator(操縱符):在讀或寫時“操縱”流本身的對象,如std::ebndl。

  • member function(成員函數)、method(方法):同義字,指類定義的操作

  • 命名空間(namespace):將庫所定義的名字放至單獨一個地方的機制。命名空間有助於避免無意的命名衝突。C++標準庫所定義的名字在命名空間std中。

  • string literal(字串面值):以雙引號括起來的字元序列

  • 未初始設定變數(uninitialized variable):類類型如果未指定初值,則按類定義的方式進行初始化。定義在函數內部的內建類型變數預設說不初始化的,除非有顯示的初始化語句。

參考:C++Primer第五版

相關文章:

第二章C++:變數和基本類型

第三章C++:字串string、向量vector和數組

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.