基本輸入

極為常見

在一個程式語言中,除了輸出外,輸入也是很重要的一環。只要一個輸入,就可以讓我們跟程式交流,讓程式處理我們所輸入的訊息,從而輸出我們想要的答案。

舉一個例子,如果我們想要知道 1234+43211234 + 4321 等於多少,所以我們就會寫一個程式如下:

#include <iostream>
using namespace std;

int main(){
    cout << 1234 + 4321;
}

在執行程式後,我們會看到我們需要的答案 55555555

但是當我們又想知道 1202332+31338471202332 + 3133847 等於多少要怎麼辦呢?我們一開始的直覺反應就會回到程式編輯器中,把數字改成我們需要的。只有幾次還好,但如果我們要一次輸入五十個,甚至是一千個算式,這種方法就會浪費許多時間。

如果我們可以在輸出之前,輸入我們想要的兩個數字進程式裡,讓程式幫我們算出兩個數字的和,是不是就方便許多了

這個章節將會教你一些基本的輸入技巧,並且最後教你如何改善問題。

基本語法

在前面的章節我們已經講過引入 iostream 這個標頭檔,以及使用 using namespace std; 這個語法,所以這裡就不再贅述。

C++ 有自己專屬的一套輸入函式,以下是一個範例:

int a;
cin >> a;

有別於輸出的 cout,輸入的 cin 需要你在終端機中輸入值。以此範例來說,我們輸入的值會寫到一個叫 aint 變數中,從而改變它原本的值。

以下是整個輸入程式運作的過程:

int a = 10;
cout << a << '\n';      
cin >> a;              
cout << a << '\n';      
10
> 30
30

在過程中,原本變數 a 的值為 10 ,輸出也會是 10 。但是在我們輸入 30 之後,所輸出的值也會是 30 耶!

我們可以從這個例子中看到,cin 可以改變變數的值,這樣我們就可以在程式中輸入我們想要的值。

多個輸入

當我們想要輸入多個變數時,我們可以用這個語法來實現:

int a, b, c;      
cin >> a >> b >> c;              
cout << a << ' ' << b << ' ' << c << '\n';      
> 10 20 30
10 20 30

可以發現,我們可以用空格或換行來分隔我們的輸入,這樣就可以一次輸入多個變數。

注意

在學習過輸入與輸出之後,有些初學者很容易搞不清楚什麼時候要使用 >> 還是 <<,甚至寫出這樣的程式碼:

cout << a >> "hello";

如果不想搞混的話,你可以這樣記: 輸入時,就要把箭頭指向你要存值的那個變數。

// 把箭頭指向 a 就是把輸入的值存入 a
cin >> a;

小測驗

下面哪一個程式不會產生錯誤?