- C/C++實踐進階之道:寫給程序員看的編程書
- 陳黎娟
- 1043字
- 2020-06-29 11:37:39
3-3 編寫Console應用
大多數C/C++語言書的例子都太數學化,很難引起讀者的興趣,幸好,除了可以把Visual C++作為學習工具外,還可以編寫一些控制臺應用,也不涉及Windows圖形界面,使我們可以專注地練習C/C++程序,而不覺得沒有用處。
對我來說,Console程序讓人想起了遙遠的DOS時代,一個“Copy /?”命令,使我們逐漸學會了所有的DOS命令。這里就讓我們懷懷舊,編一個程序仿真一下。
在這個程序中,讓我們初步體會一下Visual C++應用程序向導(AppWazrid)的特點,讓它幫助我們完成大量工作。
啟動Visual C++,選擇“File/New…”命令。建立一個工程(Project),請VC幫助我們建立。
在圖3-9中選擇“Win32 Console Application”,右邊“Project Name:”輸入“demo02”;“Location:”可以切換到自己喜歡的位置。單擊“OK”按鈕。

圖3-9 建立一個Win32 Console Application
程序進入圖3-10所示的畫面,選擇第二項,建立“A simple application”,其他三項程序與第二項的區別,大家稍后可自行測試。

圖3-10 選擇A simple application
按下“Finish”按鈕,在出現的消息對話框中確認即可,可以發現,Visual C++為我們生成了很多項目(Project)相關的程序文件。這些文件大多數是空的,這些是為編寫大應用程序做的。最主要的是demo02.cpp,main()出現了我們不知道的兩個參數——argc和argv,如圖3-11所示,它們的作用我們稍后就講,現在切換到Demo02目錄下可以發現,Visual C++自動生成的還有好幾個類型的文件,如圖3-12所示。

圖3-11 argc和argv參數

圖3-12 Visual C++自動生成多個類型的文件
這基本上是所有現代程序開發工具的特色,以項目的形式來管理開發,程序員開發的桌面狀況都可以記錄下來,下次打開這個項目,立刻能夠返回上次結束時的狀態。
體會Porject不是一兩天的事情,有些好處恐怕要等到幾個人組成一個小組開發時才能體會。我們還是回到討論console程序所有的argc和argv兩個程序參數上。
argc和argv是為傳遞console應用程序的參數而用的,比如“Copy /?”有一個參數,“/?”;“copy file.doc /program”有兩個參數“file.doc”和“/program”。程序員可以根據這些參數決定程序的功能。我們做一個小程序來詳細說明。
程序目的與操作:測試如何用argc和argv,可以添加一條代碼,添加后如圖3-13所示。
printf("%d\n %s %s\n",argc,"The argument is",argv[1]);
然后打開“Project /setting…”對話框,在“Debug”頁面中,真的寫上一個參數“參數”,當然,這只是為了測試。

圖3-13 給程序加上一個argument
然后運行程序,結果如下,如圖3-14所示。

圖3-14 運行結果
可以很明顯地看到,argc的值是程序所帶參數的數量,這個數量包含程序名本身,argv則包含程序名和參數,而且是從0開始計算。
學習與練習:我們來做一個程序,實現的功能是刪除指定的文件,目的有兩個,一是演示如何使用一些Windows API函數,體會控制臺應用程序的編寫方法;二是體會圖形化操作后面的后臺實現。可以通過查找資料實現。
- Learning Apex Programming
- 三維圖形化C++趣味編程
- R語言游戲數據分析與挖掘
- iOS開發實戰:從零基礎到App Store上架
- 匯編語言程序設計(第2版)
- C++ 從入門到項目實踐(超值版)
- SharePoint Development with the SharePoint Framework
- Getting Started with LLVM Core Libraries
- HTML 5與CSS 3權威指南(第3版·上冊)
- 人工智能算法(卷1):基礎算法
- C指針原理揭秘:基于底層實現機制
- Python一行流:像專家一樣寫代碼
- 安卓工程師教你玩轉Android
- ArcPy and ArcGIS(Second Edition)
- 系統分析師UML用例實戰