版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第第2 2課課 windows windows 程序入門程序入門 北方軟件學院北方軟件學院 格物致知 見微知著 windowswindows人機交互程序設計人機交互程序設計 北方軟件學院-windows人機交互程序設計 思考思考 n大專和大本的區(qū)別是什么?大專和大本的區(qū)別是什么? n我們上大學是為了什么?我們上大學是為了什么? n想成為軟件開發(fā)高手么?怎么成為軟件開發(fā)想成為軟件開發(fā)高手么?怎么成為軟件開發(fā) 高手?高手? n你的人生目標是什么?你的人生目標是什么? 北方軟件學院-windows人機交互程序設計 課程意義課程意義 離散數學離散數學 c語言語言 數據結構數據結構 數據庫數據庫 邏輯運
2、算邏輯運算 程序是什么程序是什么 設計程序設計程序 數據的組織處理數據的組織處理 操作系統(tǒng)操作系統(tǒng)計算機的操作原理計算機的操作原理 編譯原理編譯原理 windows程序設計程序設計 程序的運行原理程序的運行原理 應用程序設計傳統(tǒng)工具應用程序設計傳統(tǒng)工具 c+程序設計程序設計 應用程序設計熱門工具應用程序設計熱門工具 java程序設計程序設計 web程序設計程序設計 應用程序開發(fā)基礎應用程序開發(fā)基礎 互聯網應用程序開發(fā)基礎互聯網應用程序開發(fā)基礎 北方軟件學院-windows人機交互程序設計 本課主要內容本課主要內容 n高級語言語法分析高級語言語法分析 nwindowswindows程序入門程序入
3、門 n windows windows程序入口函數程序入口函數 n windowswindows程序的數據類型程序的數據類型 nwindowswindows概念概念 n 句柄句柄 n api api 北方軟件學院-windows人機交互程序設計 程序語言特征程序語言特征 n問題問題1 1:c c語言的主函數語言的主函數( (入口函數入口函數) )是?是? n問題問題2 2:c c語言的常用數據類型有哪些?語言的常用數據類型有哪些? n問題問題3 3:c c語言的常用運算符有哪些?語言的常用運算符有哪些? n問題問題4 4:學習一門程序語言我們需要掌握哪:學習一門程序語言我們需要掌握哪 些內容?
4、些內容? 北方軟件學院-windows人機交互程序設計 回顧:回顧:c c語言入口函數語言入口函數 nvoid main()void main() n* intint main(intmain(int argcargc, char, char* * argvargv) nargcargc 作用是什么?作用是什么? nargvargv 作用是什么?作用是什么? * 北方軟件學院-windows人機交互程序設計 c c語言入口函數語言入口函數* * * nargcargc是命令行總的參數個數,是命令行總的參數個數,argv 是是argcargc個參數,個參數, 其中第其中第0 0個參數是程序的全名
5、,以后的參數是命令行后個參數是程序的全名,以后的參數是命令行后 面跟的用戶輸入的參數。面跟的用戶輸入的參數。 nintint main(intmain(int argcargc, char, char* * argv) ) n intint i; i; for (i = 0; i for (i = 0; iargcargc; i+) ; i+) coutcoutargvi ii; i; return 0; return 0; n 執(zhí)行時敲入執(zhí)行時敲入 f:d1.exe f:d1.exe aaaaaaaa bbbbbb cccccc dddddd 輸出如下:輸出如下: f:d1.exe f:d1
6、.exe aaaaaaaa bbbbbb cccccc dddddd 北方軟件學院-windows人機交互程序設計 數據類型數據類型* * n基本類型基本類型 n整形、實形、字符型、布爾型整形、實形、字符型、布爾型 n構造類型構造類型 n數組、結構體、聯合體數組、結構體、聯合體 n特殊類型特殊類型 n指針類型指針類型 nvoidvoid類型類型 北方軟件學院-windows人機交互程序設計 常量與變量常量與變量* * n常量常量 n整形、字符型、實形、字符串類型整形、字符型、實形、字符串類型 n變量變量 n整形、字符型、實形整形、字符型、實形 n結構體形、聯合體形結構體形、聯合體形 n指針類型
7、指針類型 北方軟件學院-windows人機交互程序設計 運算符運算符* * n算術運算符:算術運算符:+ -+ -* * / % + - / % + - n關系運算符:關系運算符: = = = != = . - n開關運算符:開關運算符: ?:?: n位運算符:位運算符: switchif else; switch n循環(huán)語句:循環(huán)語句: nforfor循環(huán);循環(huán);while while 循環(huán);循環(huán);do while do while 循環(huán)循環(huán) n輔助控制語句輔助控制語句: : nbreakbreak;continue; return; continue; return; gotogoto 北
8、方軟件學院-windows人機交互程序設計 高級程序語言語法總結高級程序語言語法總結 n1 1)入口函數)入口函數 n2 2)數據類型)數據類型 n3 3)變量常量)變量常量 n4 4)運算符)運算符 n5 5)流程控制語句)流程控制語句 n6 6)數組、函數、結構體、指針)數組、函數、結構體、指針/ /引用引用 windowswindows程序是否也具備上述內容?程序是否也具備上述內容? windowswindows程序入門程序入門 北方軟件學院-windows人機交互程序設計 什么是什么是windowswindows程序程序 nwindowswindows程序就是所有可以在程序就是所有可以
9、在 windowswindows系統(tǒng)下運行的程序的統(tǒng)稱。系統(tǒng)下運行的程序的統(tǒng)稱。 n這里的這里的windowswindows程序特指:窗口程序。程序特指:窗口程序。 北方軟件學院-windows人機交互程序設計 什么是應用程序?什么是應用程序?* * * n應用程序是指為了完成某項或某幾項特定任務而應用程序是指為了完成某項或某幾項特定任務而 被開發(fā)運行于操作系統(tǒng)之上的計算機程序。被開發(fā)運行于操作系統(tǒng)之上的計算機程序。 n對于應用程序,需要了解的是:每一個應用程序對于應用程序,需要了解的是:每一個應用程序 運行于獨立的進程、他們擁有自己獨立的地址空運行于獨立的進程、他們擁有自己獨立的地址空 間。
10、不同應用程序的分界線稱為進程邊界。間。不同應用程序的分界線稱為進程邊界。 n對應概念是:系統(tǒng)程序。對應概念是:系統(tǒng)程序。 北方軟件學院-windows人機交互程序設計 windowswindows程序的語法程序的語法* * n入口函數入口函數 n數據類型數據類型 napiapi函數函數 n事件驅動的程序機制事件驅動的程序機制 n其他同其他同c c語言部分語言部分 北方軟件學院-windows人機交互程序設計 windows windows 入口函數入口函數 intint apientry apientry winmain(winmain(hinstancehinstance hinstance
11、hinstance, , hinstance hinstance hprevinstancehprevinstance, , lpstrlpstr lpcmdlinelpcmdline, , intint ncmdshowncmdshow ) ) 涉及數據類型:涉及數據類型: hinstance hinstance ? lpstr lpstr ? intint * 北方軟件學院-windows人機交互程序設計 apientry apientry 編譯器用來標識函數進棧順序的標志編譯器用來標識函數進棧順序的標志 北方軟件學院-windows人機交互程序設計 hinstancehinstance
12、hinstancehinstance(進程的實例句柄)(進程的實例句柄) n句柄的含義。句柄的含義。 n問題問題1 1:為什么要有學號?:為什么要有學號? n問題問題2 2:讓你來猜想,句柄的含義是什么?:讓你來猜想,句柄的含義是什么? 北方軟件學院-windows人機交互程序設計 句柄的概念句柄的概念* * * n句柄,是整個句柄,是整個windowswindows編程的基礎,一個句編程的基礎,一個句 柄是指使用的一個唯一的整數值,是指一個四柄是指使用的一個唯一的整數值,是指一個四 字節(jié)長的數值,用于標志應用程序中的不同對字節(jié)長的數值,用于標志應用程序中的不同對 象和同類對象中的不同的實例,
13、諸如,一個窗象和同類對象中的不同的實例,諸如,一個窗 口,按鈕,圖標,滾動條,輸出設備,控件或口,按鈕,圖標,滾動條,輸出設備,控件或 者文件等。應用程序能夠通過句柄訪問相應的者文件等。應用程序能夠通過句柄訪問相應的 對象的信息。對象的信息。 n句柄不是一個指針,程序不能利用它句柄來直句柄不是一個指針,程序不能利用它句柄來直 接閱讀文件中的信息。接閱讀文件中的信息。 n實例句柄是windows進程的唯一標識 。 北方軟件學院-windows人機交互程序設計 什么是進程?什么是線程?什么是進程?什么是線程?* * * n進程進程是指在系統(tǒng)中正在運行的一個應用程是指在系統(tǒng)中正在運行的一個應用程 序
14、;線程是系統(tǒng)分配處理器時間資源的基序;線程是系統(tǒng)分配處理器時間資源的基 本單元,或者說進程之內獨立執(zhí)行的一個本單元,或者說進程之內獨立執(zhí)行的一個 單元。對于操單元。對于操 作系統(tǒng)而言,其調度單元是作系統(tǒng)而言,其調度單元是 線程。線程。 n一個進程至少包括一個線程,通常將該線一個進程至少包括一個線程,通常將該線 程稱為主線程。一個進程從主線程的執(zhí)行程稱為主線程。一個進程從主線程的執(zhí)行 開始進而創(chuàng)建一個或多個附加線程,就是開始進而創(chuàng)建一個或多個附加線程,就是 所謂基于多線程的多任務。所謂基于多線程的多任務。 北方軟件學院-windows人機交互程序設計 hinstance hinstance 數據
15、類型:數據類型: hinstance hinstance:進程的實例句柄:進程的實例句柄 北方軟件學院-windows人機交互程序設計 hinstancehinstance hprevinstancehprevinstance n指向應用程序的前一個進程的實例句柄,指向應用程序的前一個進程的實例句柄, 在在win9xwin9x以上版本的以上版本的windowswindows操作系操作系 統(tǒng)該參數為統(tǒng)該參數為nullnull,已經不被使用。,已經不被使用。 北方軟件學院-windows人機交互程序設計 lpstr lpstr lpcmdlinelpcmdline nlpstr lpstr = c
16、har char * * n命令行緩沖區(qū),不包括程序的名字。命令行緩沖區(qū),不包括程序的名字。 n請:回想一下請:回想一下 charchar* * argvargv 的作用。的作用。 北方軟件學院-windows人機交互程序設計 intint ncmdshowncmdshow n窗口是否顯示標志窗口是否顯示標志 nsw_hidesw_hide nsw_showsw_show n 注:在創(chuàng)建窗口的使用會用到該參數,這里不注:在創(chuàng)建窗口的使用會用到該參數,這里不 在詳述。在詳述。 北方軟件學院-windows人機交互程序設計 參數意義總結參數意義總結 第一個參數第一個參數hinstance是進程實例
17、句柄。是進程實例句柄。 第二個參數第二個參數hprevinstance 沒有意義。沒有意義。 第三個參數第三個參數lpcmdline是一個字符串指是一個字符串指 針,它包含了傳給程序的任何參數。針,它包含了傳給程序的任何參數。 第四個參數第四個參數ncmdshow指明程序開始運指明程序開始運 行的狀態(tài)主窗口的顯示方式。行的狀態(tài)主窗口的顯示方式。 windowswindows程序中的常用數據類型程序中的常用數據類型 北方軟件學院-windows人機交互程序設計 c c語言常用數據類型語言常用數據類型 數據類型數據類型字寬字寬 charchar unsigned charunsigned char
18、 shortshort unsigned shortunsigned short intint longlong unsigned longunsigned long 北方軟件學院-windows人機交互程序設計 c c語言常用數據類型語言常用數據類型 數據類型數據類型字寬字寬 char char * * const char const char * * voidvoid 北方軟件學院-windows人機交互程序設計 windows windows 數據類型數據類型 c c 數據類型數據類型windows windows 類型類型 charchar charchar unsigned cha
19、runsigned char bytebyte shortshort shortshort unsigned shortunsigned short word word intint intint longlong longlong unsigned longunsigned long dworddword * * 北方軟件學院-windows人機交互程序設計 windows windows 數據類型數據類型 c c 數據類型數據類型windows windows 類型類型 char char * * lpstr, pstrlpstr, pstr const char const char *
20、 * lpcstr, pcstrlpcstr, pcstr voidvoid voidvoid void void * * lpvoidlpvoid * * 北方軟件學院-windows人機交互程序設計 nhinstancehinstance nhwndhwnd nhandlehandle nhpenhpen nhbrushhbrush nhbitmaphbitmap nhfonthfont nhdchdc nhresourcehresource nhcursor hcursor windows windows 新增數據類型:句柄類型新增數據類型:句柄類型* * 北方軟件學院-windows人
21、機交互程序設計 nrect rect = =structstruct _ _rectintrectint left,intleft,int top,inttop,int right,intright,int bottom bottom npointpoint= =structstruct _ _pointintpointint x,intx,int y y nsizesize= =structstruct _ _sizeintsizeint cx,intcx,int cy cy n windows windows 新增數據類型:結構體新增數據類型:結構體* * windows apiwindo
22、ws api 北方軟件學院-windows人機交互程序設計 什么是什么是api api * api(applicationapi(application programming interface, programming interface, 應用程序編程接口應用程序編程接口) ) 是一套用來控制是一套用來控制windowswindows的各個部件的各個部件( (從桌面的從桌面的 外觀到為一個新進程分配的內存外觀到為一個新進程分配的內存) )的外觀和行為的的外觀和行為的 一套預先定義的一套預先定義的windowswindows函數函數. .用戶的每個動作用戶的每個動作 都會引發(fā)一個或幾個函數的運行以告訴都會引發(fā)一個或幾個函數的運行以告訴windowswindows 發(fā)生了什么。發(fā)生了什么。 北方軟件學院-windows人機交互程序設計 api api 作用作用 n操作系統(tǒng)提供給開發(fā)者的應用程序編程操作系統(tǒng)提供給開發(fā)者的應用程序編程 接口。接口。 n用戶使用該接口可以調動操作系統(tǒng)資源,用戶使用該接口可以調
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度新型農村宅基地使用權轉讓合同范本
- 二零二五年度噴漆作業(yè)場所職業(yè)健康監(jiān)護與疾病預防合同
- 二零二五年度企業(yè)VI系統(tǒng)全案定制合同3篇
- 二零二五年度戶外噴泉節(jié)能改造專項合同
- 二零二五年度土地整治土石方運輸及土壤改良合同6篇
- 2025年度智能車展合作項目合作協(xié)議書范本4篇
- 2025版中學校園食品安全供應與配送合作協(xié)議3篇
- 二零二五年度工業(yè)用地土地廠房轉讓與產業(yè)升級合同
- 珠海城市職業(yè)技術學院《韓國語語法》2023-2024學年第一學期期末試卷
- 二零二五年度農產品供應鏈合作協(xié)議書2篇
- 安全常識課件
- 河北省石家莊市2023-2024學年高一上學期期末聯考化學試題(含答案)
- 小王子-英文原版
- 新版中國食物成分表
- 2024年山東省青島市中考生物試題(含答案)
- 河道綜合治理工程技術投標文件
- 專題24 短文填空 選詞填空 2024年中考英語真題分類匯編
- 再生障礙性貧血課件
- 產后抑郁癥的護理查房
- 2024年江蘇護理職業(yè)學院高職單招(英語/數學/語文)筆試歷年參考題庫含答案解析
- 電能質量與安全課件
評論
0/150
提交評論