圖書目錄
第1章 C語言程式設計初步
1.1 程式設計的基本概念
1.2 程式設計的一般過程
1.3 程式設計的兩種方法
1.4 C語言概述
1.5 C語言編程環境
本章小結
習題
第2章 數據類型與簡單輸入輸出
2.1 C語言基本數據類型
2.2 常量與變數
2.3 數據的輸出與輸入
本章小結
習題
第3章 運算符與表達式
3.1 基本運算符及其表達式
3.2 混合運算時數據類型的轉換
本章小結
習題
第4章 程式流程控制
4.1... [顯示全部]
命令行參數
在許多套用軟體運行時都帶有命令行參數,其實這些命令行參數在C語言編寫的程式中也可以實現,靈活地運用命令行參數進行處理可以有效地提高程式的運行效率,收到事半功倍的效果。
C語言中有關命令行參數涉及到程式的主函式main(int argc,char *argv[]這樣兩個參數,其中,int argc表示命令行參數的個數(包括可執行程式名本身),char *argv[]表示每個參數的具體內容,argv[0]為命令行中可執行程式名本身,argv[1]為命令行中第二個參數的內容,依次類推。如下例輸出命令行參數的個數及參數的內容:
main (int argc,char *argv[],
{int I;
printf(\n命令行中執行檔名為:%s,argv[0]);
printf(\n總共有%d個參數:,argc);
I=0;
while(argc>=1)
{printf(″%s ,argv[I++]);
argc--;}
}
命令行參數用的最多還是在諸如DIR A:等之類帶有盤符、路徑或檔案名稱這樣的命令行中,所以說靈活處理這一類參數才能有效地提高程式的運行效果。譬如DIR命令,其後可以是盤符,可以是路徑,也可以是檔案名稱,如何區分這一參數呢?請看下例(此程式模擬DIR命令,程式要求在命令行輸入一個參數:盤符或路徑或檔案名稱,若無參數或參數多於一個都將取默認的參數“*.*”)。
\*--------------------
功能:模擬DIR命令進行處理命令行參數
--------------------*/
#include
#include
#include
#inchlude
int j,num=0;
char ss[20],path[50],path2[50];
void main (int argc,char *argv[])
{
struct ffblk f;
int done;
if(argc==2) /*取命令行參數到數組中*/
strcpy(ss,argv[1]);
else
strcpy(ss,″*.*″); /*給數組賦值預設參數*/
if (((ss[strlen(ss)-1]==′\\′||((ss[strlen(ss)-1]==':'))
strcat(ss,″*.*″); /*若參數為路徑或盤符,則加上″*.*″ */
getcwd(path1,50); /*取當前路徑*/
if (chdir(ss)==0) /*判斷參數是否為路徑*/
strcat(ss,\\*.*); /*若路徑末沒有帶\,則加上*.* */
chdir(path1); /*恢復原來路徑*/
strcpy(path2,ss);
辭世訊息
昨日,在眾多的國際互動論壇上,計算機愛好者們以特有的方式紀念這位程式語言的重要奠基人。許多網友的發帖中沒有片言隻字,僅僅留下一個分號“;”。在C語言中,分號標誌著一行指令語句的結束,網友們以此來悼念“C語言之父”,美國著名計算機專家丹尼斯·里奇(Dennis Ritchie)所引領的時代悄然遠去。
在日益紛繁複雜的程式設計語言王國中,C語言因其簡潔、有效、通用的特性而始終占據一席之地。被譽為“C語言之父”,同時也是作業系統Unix之父的C語言發明人之一——丹尼斯·里奇10月9日以70歲之齡辭世。
生於1941年9月9日的丹尼斯·里奇曾在哈佛大學學習物理學和套用數學,1967年他進入貝爾實驗室,並曾經擔任朗訊技術公司系統軟體研究部門的領導人。
1983年,美國計算機協會將當年的圖靈獎破例頒給了作為軟體工程師的肯·湯普遜與里奇,獲獎原因是他們“研究發展了通用的作業系統理論,尤其是實現了Unix作業系統”。並且,美國計算機協會當年還決定新設立一個獎項——軟體系統獎,以獎勵那些優秀的軟體開發者,首個軟體系統獎當然也是非他們兩人莫屬。
儘管通過Unix拿獎拿到手軟,但令里奇引起最大關注和反響的則是C語言的問世。1999年,里奇和湯普遜為發展C語言和Unix作業系統一起獲得了美國國家技術獎章。
雖然在C語言之後,C++、Java等各式各樣計算機高級語言層出不窮,但不少程式設計師仍舊認為,C語言簡潔、高效、靈活的特性令其具有獨特魅力。“現在的程式編寫朝著越來越冗長龐大的方向發展,而C語言雖然屬於相對‘低級’的程式語言,但它的簡潔之美是無可替代的。”一位電腦程式員道出了自己格外青睞C語言的原因。
和里奇所創造的C語言一樣,Unix系統也同樣具有簡潔、樸素、小巧的特性。但正如里奇自己所說的那樣,“Unix系統是一個簡單基本的作業系統,但學會欣賞簡潔需要天賦。”而里奇本人,儘管在軟體發展史上占有舉足輕重的地位,也同樣在從事的領域辛勤而低調地耕耘近40年。