今天我們來學習編寫C++一些簡單的小程序。
“工欲善其事,必先利其器。”既然要寫一段程序,首先就要有適合自己的IDE(集成開發環境)。下面我給大家推薦一些IDE:
1.Visual C++
在最開始(那時候我還什么都不懂)的時候,從網上下了一個Visual C++ 6.0,現在已經刪掉了,所以就不放圖片了。從個人的角度來說,初學者不太合適,因為它需要純手工敲代碼。
2.CodeBlocks
這一款軟件是后來老師發給我們安裝的,我一直在用,用起來不錯,操作也很簡單,我就順便多說一點。打開后會有一個StartPage,要是沒有的話可以去View那里找,然后創建一個新的project就可以了,或者File->New->Project,然后點擊Console application。
之后命名,設置保存位置就可以開始編寫你的代碼了。
剛進來的界面是一段Hello World的代碼。
然后點擊上面的Build and run就可以運行了(或者直接按快捷鍵F9)。運行結果如下:
3.Visual Studio(VS)
這是一款強大的IDE,但也正因為強大,它的文件很大,安裝不便,不易換機(但我看大佬都用這個)。VS不止支持C和C++,還支持其他的一些語言。
4.其他IDE
因為我用過的IDE也不是很多,所以不能對於每個IDE做詳細地介紹。雖然我可以從網上找一些其他人的觀點看法來放在這里,但我還是想寫自己的觀點,做好原創。
還有很多好用的IDE,比如Dev C++、Netbean、Falcon C++等等。
接下來我們編寫我們的第一段代碼:Hello World(雖然在打開的時候就有了,但還是自己寫一下比較好)
1 #include <iostream> 2 /* 3 "#"聲明后面的一行需要在預編譯的時候轉義 4 include表明后面的是一個文件 5 <>或者“”表示文件名 6 iostream就是一個文件,在你安裝C++環境時就已經存放到你的電腦里了 7 */ 8 9 using namespace std; 10 /* 11 namespace是指標識符的各種可見范圍 12 這句話的意思是使用一個標准命名空間 13 */ 14 15 int main()//主函數,也就是一個程序要運行的部分,int表示返回值的類型 16 { 17 cout << "Hello World!" << endl; 18 /*cout表示輸出 19 "<<"是流插入運算符,表示輸出到控制台 20 Hello World!是字符串,所以需要引號包起來 21 endl表示換行 22 */ 23 24 return 0;//返回值,這里返回0,分號代表一條語句結束,上一句也是同樣的道理 25 26 }//花括號之間的內容代表一個語句塊,必須是一對一對的,不能出現單個的括號
代碼中的/*......*/和//.......是注釋,編譯器在編譯時並不編譯他們,這些語句只是為了程序員更好的閱讀。
/*......*/中間的部分表示注釋,可以跨越多行,但是//....... 表示本行在//后面的部分是注釋,只能在本行使用。
這就是一段簡單的代碼了,下面給大家看幾張圖片,介紹C++中符號的意義:
1 #include <iostream> 2 3 using namespace std; 4 5 int main() 6 { 7 cout << 1+1 << endl; 8 cout << 6-4 << endl; 9 cout << 2*1 << endl; 10 //簡單的加減乘,除法后面說到,因為除法相對復雜一些 11 return 0; 12 } 13 /*運行結果: 14 2 15 2 16 2 17 */
在說除法之前,我們先了解一下數據類型:C++的基本數據類型分為五種,整形(整數),浮點型(小數),字符串型(多個字符),字符型(單個字符),布爾型(真或假)。先來說整形和浮點型,后幾種之后再說。看圖:
然后我們再來說除法,看下面的代碼:
1 #include <iostream> 2 3 using namespace std; 4 5 int main() 6 { 7 cout << 1/2 << " " << 1%2 << endl; 8 /*輸出結果為: 9 0 1 10 */ 11 return 0; 12 }
為什么1/2不是0.5呢?(難點)這是因為1和2都是整形數,兩個整形數相除,所得結果還是整形數,也就是整數,這個整數從哪里來?寫一個式子:1÷2=0......1.大家可能已經想到了,0來自於商。而1%2讀作一模二,表示1÷2的余數。
但如果想要算1/2怎么辦呢?可以把1改為1.0,1.0是一個浮點數,這樣一來就變成了浮點數和整形數的運算,計算結果也變成一個浮點數,也就是0.5了。
接下來我們來學習一下如何輸入,畢竟你要寫一個程序,總會有需要客戶輸入的情況,比如登記信息的程序要求用戶輸入年齡等等。
1 #include <iostream> 2 3 using namespace std; 4 5 int main() 6 { 7 int age; 8 cin >> age; 9 cout << age << endl; 10 return 0; 11 }
首先你要聲明一個變量,這就像你和別人要一本書(可以是任何書),你要先說,我需要一本書,然后對方才會給你一本書,可能是《簡愛》,也可能是《巴黎聖母院》,這是由對方決定的。上面我們聲明了年齡age,這時你也可以給age賦一個初始值:
age = 0;
以防止發生錯誤。
輸入時需要用到關鍵字cin,注意cin后面的運算符是>>,與cout后面的運算符剛好相反,然后在后面跟上你需要輸入的東西(其實和cout大同小異)。
輸入是以空格或者換行結束的。但有時,我們需要輸入空格,比如輸入"New Work"
1 #include <iostream> 2 3 using namespace std; 4 5 int main() 6 { 7 string city; 8 getline(cin,city); 9 cin.get(); 10 cout << city << endl; 11 return 0; 12 }
有時候,我們想要修改一個變量,需要一處一處地改,但是聲明了常量就不需要那么麻煩了。
1 #include <iostream> 2 3 using namespace std; 4 5 int main() 6 { 7 const double PI = 3.14159;//聲明一個常量PI 8 cout << PI<< endl; 9 return 0; 10 }
常量的作用就在於,我們不希望去修改它。
最后一點是簡化運算符,比如你要寫a = a + 1;那么可以直接寫成a += 1;其他的運算也是一樣的道理。
還有前++,后++,前--,后--的操作: