C++原始檔的副檔名爲.cpp, 也就是c plus plus的簡寫, 在該檔案裡有且只能有一個名爲main的主函數, 它作爲程式的入口. 因爲這個主函數的存在, 所以C++被稱爲混合型語言.
第一種: 單行註釋, 從 // 開始到本行結束.
像這樣:
// 下面 下麪的程式碼是求最大值的
第二程: 多行註釋, 從 /* 開始到 */ 結束.
像這樣:
/*
函數功能: 下面 下麪的程式碼是用來求最大值的
函數描述: 接收兩個整型參數, 返回它倆的最大值
*/
我們在使用這兩個物件前, #include <iostream> 先引入這個標頭檔案, 並且使用名稱空間: using namespace std; 之後就可以使用這兩個物件啦!
a. 輸入物件: cin, 輸出物件cout.
像這樣:
int a = 0; // 定義一個整型變數a, 賦初值爲0
cout << a; // 列印這個值
cin >> a; // 使用cin物件獲取使用者輸入的值賦值給a
cout << a; // 使用cout物件輸出變數a的值
b. 當然我們也可以輸出字串:
cout << 「我是被輸出的字串!」;
c. 我們還可以字串加變數值的拼接輸出:
cout << 「使用者輸入的值爲: 」 << a << endl;
d. 我們也可以在輸出的時候進行換行
第一種: cout << 「\n」;
第二種: cout << endl;
這兩個的效果是一樣的.
引入標頭檔案的方式有兩種, 系統標頭檔案用<>, 自定義標頭檔案用」」
第一種: 帶.h引入標頭檔案
#include
第二種: 使用名稱空間引入標頭檔案
#include <iostream>
using namespace std;
int a = 0;
int z(0);
上面兩句話是等價的, 作用: 申請記憶體空間, 給記憶體空間命名, 向這塊記憶體中寫入數據.
不過我們一般都使用第一種方式.
函數及變數的使用規則: 先宣告, 後使用. 變數有時也可以邊宣告, 邊使用.
我們在main函數後面定義的函數, 如果想要在main函數內使用, 就必須在main函數前宣告, 告訴編譯系統, 後面有這個函數, 我要用啦! 當然也可以把函數定義放在main函數之前, 這樣就不用宣告啦!
像這樣:
#include <iostream>
using namespace std;
// 宣告函數
// 第一個int爲返回值型別, 也稱之爲函數型別, 第二, 第三個int爲參數型別
int getMax(int, int);
int main(int argc, const char * argv[]) {
// insert code here...
int a = 5;
int b = 8;
// 函數宣告之後, 纔可使用
int result = getMax(a, b);
cout << result << endl;
return 0;
}
// 定義函數
int getMax(int a, int b) {
if (a > b) {
return a;
} else {
return b;
}
}
如果函數不需要返回值, 可以用void標識, 一旦使用void, 函數體不再使用return語句, 但是可以使用return;直接結束函數的執行, 返回到呼叫函數.
像這樣:
void sayHello() {
count << 「I am a student!」 << endl;
return; // 後面的語句不再執行, 退出函數
count << 「I am 8 years old!」 << endl;
}
a. const修飾的變數,
在以後值不可再更改, 所以我們稱之爲符號常數, 也必須在宣告時對符號常數進行初始化.
像這樣:
const int a = 5;
a = 10; // 錯誤, 符號常數a不可更改
但是用extern修飾的外部變數, 可以不用進行初始化.
像這樣:
extern const int b; // 其中b爲其它檔案定義的外部符號常數
b. 用於代替宏定義
#define M_PI 3.14 // 宏定義是直接進行替換, 沒有型別檢查
const float M_PI 3.14; // 而const定義的符號常數, 是有型別檢查的, 更安全.
c. 預處理有有一種: 宏定義, 條件編譯, 檔案包含
第一種, 宏定義: 在編譯期間, 將出現宏的地方替換爲指定程式碼
第二種, 檔案包含: 一個檔案把另一個檔案的內容包含進來.
像這樣:
#include <iostream> using namespace std;
第三種, 條件編譯
像這樣:
#ifndef _LIBCPP_HAS_NO_STDIN
extern _LIBCPP_FUNC_VIS istream cin;
extern _LIBCPP_FUNC_VIS wistream wcin;
#endif
一般用於系統控制, 跟我們程式碼中的if..else是一樣的, 用得比較少
a. 括號緊跟在函數名後面, 我們見到名字加括號, 很直觀的知道這是一個函數
b. for, while等關鍵詞和括號之間要用一個空格隔開
c. 運算子左右各留一個空格
d. 在參數列表中, 每個逗號後面加空格, 這樣顯得更清晰
e. 合理新增空行和註釋, 讓程式碼以組的形式和功能塊的形式呈現, 這樣就更完美啦!
我們每每在接觸一門新的語言的時候, 關注點總是放在關鍵字, 語法結構, 函數(方法)使用上, 而我們學習一個新的語言要學會得應該是基本素養和基本概念, 以及語言當中所包含的自己所特有的思想。
如果你也很想學程式設計,可以來我的C語言/C++程式設計學習基地【點選進入】!
還有(原始碼,零基礎教學,專案實戰教學視訊)!帶你入個門還是簡簡單單啦~
涉及:遊戲開發、課程設計、常用軟件開發、程式設計基礎知識、駭客等等...