WINDOWS編程案例分析
- 期刊名字:武漢船舶職業(yè)技術(shù)學院學報
- 文件大?。?62kb
- 論文作者:沈?qū)m新
- 作者單位:南京化工職業(yè)技術(shù)學院
- 更新時間:2020-09-25
- 下載次數(shù):次
一一工程 技術(shù)-武漢船舶職業(yè)技術(shù)學院學報 2010年第2期-WINDOWS編程案例分析沈?qū)m新(南京化工職業(yè)技術(shù)學院,江蘇南京210048)摘要從DOS操作系統(tǒng)下結(jié)構(gòu)化C語言編程轉(zhuǎn)變到WINDOWS操作系統(tǒng)下的面向?qū)ο蟮腃++語言編程,學生不.僅要面對編程語言的發(fā)展,同時,操作系統(tǒng)的環(huán)境也有了很大的不同, WIND)WS作為多用戶多任務(wù)的操作系統(tǒng)更加復(fù)雜。本文通過DOS小游戲的改編,使用學生比較感興趣的游戲案例,強化了實現(xiàn)相關(guān)概念和知識,在實踐中取得了較好的教學效果。關(guān)鍵詞C語言;C++語言 ;游戲案例;程序改編中圈分類號TP316.7 文獻標志碼 A文章編號1671- 8100<2010)02-0039-03C語言與C++語言是不少高校廣泛開設(shè)的顯示和移動。 蛇的三種情況的判斷,包括蛇吃食課程,從C語言到C++語言的學習轉(zhuǎn)化是一個物,蛇會增 長,蛇碰墻或蛇首尾相碰,蛇死退出游艱難的過程,因為在這其中要實現(xiàn)結(jié)構(gòu)化程序設(shè)戲。整個小游戲的流程并不復(fù)雜,但對初學者還.計向面向?qū)ο蟪绦蛟O(shè)計的轉(zhuǎn)化,同時,操作系統(tǒng)的是有一定難度。環(huán)境也有很大的不同,增大了教學的難度。為了1.2 熟悉WINDOWS下的圖形工作方式說明結(jié)構(gòu)化程序設(shè)計與面向?qū)ο蟪绦蛟O(shè)計的不同由于前面的小游戲是在DOS下通過調(diào)用之處,同時簡單了解WINDOWS的基于消息的編TURBO C的圖形庫(GRAPHICS. LIB)來實現(xiàn)程思維,我們將DOS下用C語言編寫的貪吃蛇圖形工作方式的,而我們學習C++-般采用的小游戲改編為C++編寫,用面向?qū)ο蟮乃枷雭硎荲C++6.0的開發(fā)環(huán)境,該環(huán)境不支持圖形庫組織,用類來封裝,在WINDOWS下以窗口形式(GRAPHICS. LIB)。這使得很多DOS下的C語運行WIN32的應(yīng)用程序。言游戲代碼在VC+ +6.0中不能通過編譯,我們1改編的前提條件只能使用WINDOWSAPI函數(shù)來完成圖形的繪制,要求在預(yù)編譯時包含“WINDOWS.H",這樣1.1 通讀DOS下的貪吃蛇源代碼就可以調(diào)用大部分的API函數(shù),同時要熟悉.貪吃蛇小游戲包括注釋不到200行,是一個WINDOWS圖形編程中用到的設(shè)備上下文DC經(jīng)典的游戲案例,能夠較好說明結(jié)構(gòu)化編程的思(DEVICE CONTEXT),包括創(chuàng)建DC,創(chuàng)建畫想。主函數(shù)包括四塊,第一塊是初始化圖形系統(tǒng),刷,創(chuàng)建畫筆。在TURBOC中包括圖形庫的引用,對應(yīng)顯卡驅(qū)1.3熟悉 WINDOWS消息驅(qū)動的編程方式動的適配,進入TURBO C的圖形開發(fā)方式。第在C語言結(jié)構(gòu)化編程中,代碼是順序執(zhí)行二塊是初始化游戲界面,設(shè)定游戲的范圍在圍墻的,有固定的次序。在WINDOWS消息驅(qū)動的工中,并顯示圍墻。第四塊是退出圖形模式,響應(yīng)用作方式下,我們?yōu)椴煌南蕚淞瞬煌奶幚響羧我怄I退出游戲。游戲的主要部分在第三個模模塊中國煤化工的化結(jié)束就進入塊中實現(xiàn),包括隨即產(chǎn)生和顯示食物,蛇的產(chǎn)生、等待∈觸發(fā)不同處理*YHCNMHG*本文系南京化工職業(yè)技術(shù)學院教學研究課題(編號:2009-60)收稿日期:2009-12- -20作者簡介:沈官新.男,工學碩士.研究方向:面向?qū)ο缶幊?計算機網(wǎng)絡(luò)。39-武漢船舶職業(yè)技術(shù)學院學報 2010年第2期-順序,沒有固定的執(zhí)行次序。程序通過接受特定消息來結(jié)束程序的運行。(3)定時器的使用。DOS下的蛇的運動間隔2改編要點通過調(diào)用“DELAY"函數(shù)來實現(xiàn),在WIN32 AP-(1)VC工程的建立。在VC++6. 0建立PLICATION中通過設(shè)定定時器和響應(yīng)定時事件WIN32 APPLICATION工程,選擇建立典型的來實現(xiàn)。首先在WM_PAINT消息來時實現(xiàn)游“HELLO WORLD"應(yīng)用,可以讓VC的開發(fā)環(huán)境戲界面初始化,初始化結(jié)束設(shè)定定時器,在定時器為我們自動生成框架代碼。包括WINDOWS系事件觸發(fā)時,來實現(xiàn)蛇的移動的吃食等情況的判統(tǒng)下的主函數(shù)和回調(diào)函數(shù),要做的就是添加和改斷處理。寫代碼,來實現(xiàn)自己的功能。進人主函數(shù)后,在創(chuàng)(4)蛇的運動控制。蛇的運動分為自動和手建窗口類時改寫窗口的外觀.背景和光標等樣式。動,DOS下的蛇的自動根據(jù)實時的方向來移動,然后,注冊剛剛創(chuàng)建的窗口類,顯示窗口,進人手動通過調(diào)用“BIOSKEY"函數(shù)接受鍵盤消息改變蛇頭移動方向。在WIN32 APPLICATION定WINDOWS消息循環(huán)。(2)對象化的改造。在DOS下蛇和食物都是時事件響應(yīng)中來實現(xiàn)自動,在鍵盤的按下或彈起結(jié)構(gòu)體,在WINDOWS下改造成類和對象來實事件中接受鍵盤消息改變蛇頭移動方向。上述要點還有待同學們在實際改造中認真領(lǐng)現(xiàn)。食物的改造比較簡單,原來食物的結(jié)構(gòu)體包.會,老師加以引導(dǎo)。在本案例的基礎(chǔ)上可以進一括食物出現(xiàn)的橫縱坐標和食物顯示、隱藏的一個步擴充,讓同學們進-步認識到面向?qū)ο缶幊痰腂OOL值,現(xiàn)在的食物類中不僅要包括上述變量,特點和優(yōu)勢,比如食物可以設(shè)定不同顏色來設(shè)定還要包括對食物的操作,主要有食物的顯示方法.蛇吃到食物加分分值。分別在DOS下的結(jié)構(gòu)化和隱藏方法,通過傳遞當前的DC句柄結(jié)合食物的C代碼中改寫,和在WINDOWS下的面向?qū)Φ奈恢脕盹@示和隱藏。食物顯示位置通過隨機函象的C++中改寫,并加以比較。復(fù)雜一點的,可數(shù)在圍墻內(nèi)生成,食物隱藏發(fā)生在蛇吃掉食物后,以對蛇的外觀和運動方式加以修改,再加以比較。在蛇的運動過程中存在判斷是否吃到食物的情況3結(jié)語和是否要重新生成食物,而類的封裝特性不允許直接訪問類的成員變量,即成員變量一般設(shè)置為案例教學已經(jīng)是計算機教學的趨勢,在C+私有屬性,因此在食物類中有對應(yīng)的方法來訪問+教學的結(jié)束之時,通過一個小游戲的改編,一-方和設(shè)置到上述屬性。而蛇的改造要稍顯復(fù)雜,原面可以提高同學們編程的興趣,另一方面可以進來蛇的結(jié)構(gòu)體包括兩個整形的數(shù)組,分別存儲蛇-步強化面向?qū)ο蟾拍詈退枷?。雖然本案例使用每節(jié)的橫,縱坐標。另外三個整型的變量分別存的是VC++的開發(fā)環(huán)境,但是在轉(zhuǎn)化過程中并貯蛇的節(jié)數(shù),蛇的移動方向和蛇的生命狀態(tài)。在不涉及MFC框架的使用,可以作為面向?qū)ο蟮臉?gòu)造蛇類中可以把上述結(jié)構(gòu)體內(nèi)的成員改寫成類WINDOWS開發(fā)的人門案例。中的私有成員變量。在類的構(gòu)造函數(shù)中設(shè)定蛇的參考文獻初始位置、節(jié)數(shù)移動方向。蛇的運動中要判斷是1候俊杰深入淺出MFC [M].武漢:華中理工大學出版社2001,5否吃到食物,需要有方法得到蛇頭的坐標和改變2楊正校. 新概念車C語言程序設(shè)計[M].南京:河海大學出版蛇的節(jié)數(shù)的方法。蛇也要有顯示自身的方法和通社2008,5過隱藏來顯示蛇運動效果的方法。蛇碰墻或蛇頭[M].北京:清華大中國煤化工碰蛇尾蛇會死,蛇類中要有改變蛇生命狀態(tài)的方THCNMHG法。10WINDOWS編程案例分析沈?qū)m新-Case Studies and Research of WINDOWS ProgrammingSHEN Gong-xin(Nanjing College of Chemical Technology, Nanjing 210048, China)Abstract: In the transformation of structured C language programming in DOS operating sys-tem to the object-oriented C + + language programming in the WINDOWS operating sys-tem, students face not only language development, but different environment of operatingsystems; WINDOWS as a multiuser and multi-task system is more complicated. This paperintroduces the reprogramming of some mini DOS games and cases that interest students tohelp them strengthen related concepts and knowledge. This practice proves to be effective inteaching.Key words:C language;C+ + language;game case;reprogramming(責任編輯:譚銀元)(上接第34頁)Abstract: In this paper, we gave 'in example about Linear programming, in which the opti-mal condition was obtained by soni basic theory of advanced algebra and geometry. This ex-ample indicates the close relations of the two course: the advanced algebra is the basic tool ofGeometry; the Geometry is the background of advanced algebra. It's inappropriate to teach itseparately in collge education.Key words: Advanced algebra; Geometry; linear programming; optimal condition中國煤化工MYHCNMHG41
-
C4烯烴制丙烯催化劑 2020-09-25
-
煤基聚乙醇酸技術(shù)進展 2020-09-25
-
生物質(zhì)能的應(yīng)用工程 2020-09-25
-
我國甲醇工業(yè)現(xiàn)狀 2020-09-25
-
石油化工設(shè)備腐蝕與防護參考書十本免費下載,絕版珍藏 2020-09-25
-
四噴嘴水煤漿氣化爐工業(yè)應(yīng)用情況簡介 2020-09-25
-
Lurgi和ICI低壓甲醇合成工藝比較 2020-09-25
-
甲醇制芳烴研究進展 2020-09-25
-
精甲醇及MTO級甲醇精餾工藝技術(shù)進展 2020-09-25



