C語言程式設計基本規範
http://blog.csdn.net/pipisorry/article/details/25404807
不要使用void main和system("pause")
1 : "void main"不是C++的標準進入點
標準只支援兩種宣告
第一種"int main"
第二種"int main(int argc, char *argv[])"
宣告"void main"可能會有非預期的結果
這點不只適用於C++,C也一樣管用
這是教科書的錯?或者是教授們的錯?
2 :不要用system("pause")來暫停,可以改用std::cin.get或getchar()
為何不要用system("pause")?
有兩個理由
一 : 不具可移植性
二 : 這東西很貴
貴在那裡?讓我們來看看system("pause")的流程
1 : 暫停你的程式
2 : 在sub-process中啟動OS
3 : 尋找要執行的命令併為之分配記憶體
4 : 等待輸入
5 : 回收記憶體
6 : 結束OS
7 : 繼續你的程式
[不要再用system("pause")和void main了]
系統讓C++控制檯程式停下來,實現暫停功能
一、針對Microsoft
system( "PAUSE ");
--------------------
getchar();
---------------------
Sleep();
二、針對Linux
exit引數代表的意思
他就是一個給外部程式一個值,外部程式利用這個值可以相應的捉某些動作,至於這個值代表的是什麼,由你自己決定,不管是1代表正常還是0代表正常,都一樣,但是在Windows平臺一般是0代表正常,這只是個習慣問題.假如是你開發外部程式呼叫你自己的Java程式,那麼使用10000代表正常退出也是無所謂的,只要你理解就可以了,但是還是按照習慣來的比較好C 語言的設計之初就是為 Unix 系統設計的,而這個系統是『很多程式互相配合』搭配成一個系統。
每個執行著的程式都是程式,而程式就會有父程式,父程式通常是直接啟動你的程式,父程式死亡的程式會被 init 收養,其父程式變為 init,而 init 的父程式是程式 0,程式 0 則是系統啟動時啟動的第一個程式。exit() 裡面的引數,是傳遞給其父程式的。對父程式來說,你的程式彷彿是一個函式,而函式可以有返回值。
所以回答第一個問題:exit() 的引數,是給自己的父程式使用的。通常一個程式的父程式可能是任何程式,因此我們無法預期我們的父程式是否規定必須要有這個返回值,那麼我們應當提供這個返回值,以保證不同的父程式的需求得到滿足。
一個典型的例子是 make,Makefile 對於一個 target 下面有多條順序執行的語句,而 make 作為父程式,會檢查每個語句的返回值是否為 0 ,遇到任何一個非 0 值,都會停止當前 rule 的執行。而我們知道,make 實際上可以執行任何命令任何程式,因而任何被 make 呼叫的程式必須有正確的返回值。
另外一個問題,為什麼要使用 exit() 函式?
答:是歷史原因,雖然現在大多數平臺下,直接在 main() 函式裡面 return 可以退出程式。但是在某些平臺下,在 main() 函式裡面 return 會導致程式永遠不退出(因為程式碼已經執行完畢,程式卻還沒有收到要退出的指令)。換句話說,為了相容性考慮,在特定的平臺下,程式最後一行必須使用 exit() 才能正常退出,這是 exit() 存在的重要價值。
from: http://blog.csdn.net/pipisorry/article/details/25404807
ref:
相關文章
- Go 語言程式設計規範Go程式設計
- C語言程式設計規範——名稱縮寫C語言程式設計
- C語言程式設計,初學者必學程式碼規範,你知道哪些?C語言程式設計
- c語言程式設計題C語言程式設計
- C語言程式設計入門之--第四章C語言基本資料型別C語言程式設計資料型別
- 結對程式設計(c語言)程式設計C語言
- 設計模式 基本規範與基本原則設計模式
- 網頁設計的基本規範網頁
- 嵌入式c語言編碼規範C語言
- Java語言規範Java
- C 語言程式設計利器之 CLion程式設計
- 20201022-成信大-C語言程式設計-20201學期《C語言程式設計B》C-trainingExercises26C語言程式設計AI
- JS程式設計規範JS程式設計
- React程式設計規範React程式設計
- python程式設計規範Python程式設計
- 程式設計小記-程式設計規範程式設計
- C語言程式設計入門之--第五章C語言基本運算和表示式-part2C語言程式設計
- 初級程式設計師需要知道的基本程式碼規範程式設計師
- 程式設計正規化 —— 函數語言程式設計入門程式設計函數
- C語言趣味程式設計100例pdfC語言程式設計
- C語言+圖形程式設計——自制象棋C語言程式設計
- C語言程式設計題T1C語言程式設計
- C語言指標應用程式設計C語言指標程式設計
- C 語言程式設計習慣總結程式設計
- C語言程式設計B作業04C語言程式設計
- 偽隨機數C語言程式設計隨機C語言程式設計
- C語言程式設計-漢字點陣C語言程式設計
- 初步瞭解C語言Windows程式設計C語言Windows程式設計
- C++的函數語言程式設計C++函數程式設計
- JavaScript函數語言程式設計(1):基本思想JavaScript函數程式設計
- React前奏,函數語言程式設計基本概念React函數程式設計
- App設計的基本原則和規範APP
- Go 語言程式碼風格規範-指南篇Go
- Go 語言程式碼風格規範-概述篇Go
- Java語言編碼規範Java
- C語言程式設計之《資料輸出》C語言程式設計
- C語言程式設計——9,預處理命令C語言程式設計
- C語言程式設計-實驗報告4C語言程式設計
- c語言程式設計——實驗報告一C語言程式設計