2023年04月05日 07:09
賽迪網
很多人學c語言很長一段時間了,還不知c究竟能幹什麼,以為學習c語言沒什麼用,純粹是為了應付學校的考試.更有人說"學c語言?別做如此愚蠢的行為了!趕快學c++吧!"這種看法是不對的,不應該把c跟c++之間划起絕對的界限,過分看重c++而把c貶得一無是處,這是很片面的.c++功能雖然強大,但它畢竟是c的"超集",在c++裡有哪一處找不到c的影子呢?沒有c的支援,c++只能是無本之木。
一般情況下,c++程式設計方式編寫的程式源**量小,但編譯後的**量較大,執行的速度略低,不過開發時的工作量和工作難度較小;而c程式設計方式編寫的源**量較大,但可執行的效率高.如果一些對速度要求高,尤其是對硬體操作較多的程式,大多數還是用c程式設計方式開發的(用c又比用彙編簡單,易於實現).另外,學win32 c程式設計還有助於更深入地了解windows 的內幕和win32 api。
任何的程式語言都是一種工具,學習語言的目是要使用它來編寫出實際需要的軟體來,而軟體作為乙個使用者程式,執行時要依賴作業系統,大多數人使用什麼作業系統,我們就要編寫出基於哪一種平台上的程式來.這樣,軟體才會有更大的市場。
現在市面上出現的有關c語言方面的書大多是教授dos下的c,上機實習也是在turbo c 2.0(簡稱tc)環境下轉來轉去.程式設計環境的單調總使人感到不爽.這也沒辦法,dos 下的c是最簡單的,初學者當然要從最簡單的入門啦.連比較有名的計算機專家譚浩強編的書也都是贊成從dos下的c學起的.再說,乙個剛剛入門的人想在windows 這樣的多程序,多執行緒的作業系統下用c程式設計,那似乎又不太現實.(那要了解在windows下,乙個win32程式大體上是怎樣執行的.要對系統有比較多的了解才行,乙個初學者暫時還不具備那麼多的知識)但我們的腳步又不能夠只停留在dos裡,應該積極地從dos向windows轉變.在dos的時代,我們可以對dos下的程式設計迷戀,但現在都是windows橫行霸道的時代了,我們就應用c語言編寫windows平台上的程式,因時而變,學以致用.是時代使然!如果現在還是dos雄霸天下的話,那我就不會寫這篇狗屁不通的文章來遺笑大方了,不被臭雞蛋扔死才怪呢!
"變法"是大勢所趨的了,關鍵是怎麼變,不單單是學習c語言的人如此,就連學c++的人都這樣,筆者曾經在qq上碰到乙個學了c++將近一年的小伙,居然問我,他想編乙個windows視窗,該怎麼下手,如果學一門語言用了一年時間,只是學了一點語法知識,卻沒有編過一道程式,那實在是一種悲哀.下面我談談從dos向windows轉變的一些個人見解,(這純屬個人觀點,僅供參考,如果您已是高手,完全不必要在此浪費時間):
一.拓寬視野,改變偏見
別老以為c只是dos特有的東西,一提到c語言就認為c只能在dos下程式設計.其實,這是被tc束縛了意識,我們在學校裡平時就只在dos的tc裡面用c程式設計,很少用到"圖形模式",整天面對?quot;烏黑黑"的螢幕,也難怪有些人一看到乙個用c語言描繪出來的像windows的視窗便以為是c++的手筆.其實,作為一種語言,可以在任何一種平台上程式設計,只是介面不同而已,只要找到適合該平台的程式設計工具即可,c語言當然也能在windows下大放異彩.眼界放寬點,改變偏見,必有精彩發現.
二.選擇優秀的程式設計工具.
「有好的工具,做起事來就事半功倍」.在dos下我們常用tc或bc(borland c).在windows下可以用c++builder 或者visual c++ 來程式設計,最好用visual c++ 畢竟是微軟的東西嘛!微軟一天不垮台,程式設計者的飯碗就不會掉的啦 ^_^ .再說,windows作業系統是微軟出的,其內幕微軟是最清楚不過的了,在應用程式介面上,相信vc也是做得最好的.不過用vc++6來編c程式會恨煩的,大家要有心理準備.同時可以選擇多種程式設計工具,例如彙編,可以加強對windows的了解,是成為高手的好方法。
三.加強對windows的了解.
可以說編乙個程式,就是用一種語言的語法形式將資料結構和表面的執行過程描述出來.在不同的作業系統下,其程式的執行過程是不同的.我們應該對windows的系統機制最起碼有個大體的了解,才有可能編寫windows的程式.dos是單程序單執行緒的系統,程序從頭到尾的順序執行,而windows是多程序、多執行緒的作業系統,是基於事件的,訊息驅動的作業系統.明白這些是在windows下程式設計必不可少的,多學學它,你會發現windows 和 dos有很多的不同之處。
四.採取靈活多變的學習方法.
在不同的時期,學習不同的東西?可是有些人學習像word,excel這類操作性極強的辦公軟體時,總是先看書,看到尾巴忘了頭,到上機時卻不知所措.這種學習方式是被動的,看這些軟體操作的書,裡面說的都是具體的操作,不親手又怎能接受新知識?
五.多進行比較.
dos和windows有許多共同和不同的地方,如果是從dos學過來的話,在學習過程中不妨多進行比較,把不同的地方記下,相同的地方可以跳過,這可以快速地了解系統的不同之處,迅速地學到東西!
學習程式設計,我主張"實踐->理論->再實踐"的方式,在程式設計的初期,不管你會不會寫程式,都應先實踐,(這裡的實踐是指程式設計工具操作方面的實踐),學會操作程式設計工具.也許有些人會說:"廢話!沒有理論,又怎麼實踐?"不錯,當你坐在一台電腦面前不知所措時,你就會想方設法使自己學會操作它,主動看書,看聯機幫助,請教別人,忙得個"不亦樂乎",這不是變"被動"為"主動"了嗎? 邊學習邊操作,以實踐來帶動理論的學習,接著達到"理論與實踐同步",就可闖過第一關,學會了程式設計工具的基本操作,可以為以後上機實踐打下鋪墊.
光學會操作像vc這類的工具還不行,工具是死的,人才是活的,不會程式設計只能是空操作,你還會說:"廢話!沒有理論,怎麼實踐?"的,這時就要學習程式設計的真功夫了,也就是我說的第二階段--學"理論"階段,深入研究前輩們的著作,吸取前人的智慧型精華為我所用,扎扎實實打好程式設計內功,功夫到家了就應該"再實踐",將學到的東西運用於實際,編寫出我們需要的軟體來.學以致用嘛,呵呵~~這種方式總比"先學好語法的條條框框,再上機實踐"的效果好得多啦.
關於向windows轉變的個人觀點就只談這些,希望初學者早日踏上windows的光明大道!由於我也是乙個菜鳥,水平有限,寫得不好,還請各位多多包涵!
(t113)
C語言初學者的困惑 dos向windows轉變
2006年04月05日 07 09 賽迪網 很多人學c語言很長一段時間了,還不知c究竟能幹什麼,以為學習c語言沒什麼用,純粹是為了應付學校的考試.更有人說 學c語言?別做如此愚蠢的行為了 趕快學c 吧 這種看法是不對的,不應該把c跟c 之間划起絕對的界限,過分看重c 而把c貶得一無是處,這是很片面的...
C語言初學者總結
第一次練習 1 求1 2 3 100。迴圈 答案 include void main 2題目 輸入三個整數x,y,z,請把這三個數由小到大輸出。1 程式分析 我們想辦法把最小的數放到x上,先將x與y進行比較,如果x y則將x與y的值進行交換,然後再用x與z進行比較,如果x z則將x與z的值進行交換,...
C語言初學者建議
首先申明,本人不是什麼高手,但自認為對c還比較熟悉,可以給你提點建議 1 學習c語言,要從入門到精通,需要讀哪些書 從簡單的到難的排序,越詳細越好,最好都能注釋下選擇這本書的理由 入門階段 還是老譚那本。理由 雖然不能說它寫得有多好,但是你現在要做的是入門,要快速的掌握c的基本語法,這本書很好理解,...