特黄特色三级在线观看免费,看黄色片子免费,色综合久,欧美在线视频看看,高潮胡言乱语对白刺激国产,伊人网成人,中文字幕亚洲一碰就硬老熟妇

學習啦 > 學習方法 > 通用學習方法 > 學習經(jīng)驗 > 怎么正確有效的學習計算機語言

怎么正確有效的學習計算機語言

時間: 欣怡1112 分享

怎么正確有效的學習計算機語言

  無論對于何種計算機編程語言,其核心編程思想都是一樣的,所以想要學好計算機語言需要找到正確的學習方法。那么怎么正確有效的學習計算機語言?以下是學習啦小編分享給大家的學習計算機語言的方法,希望可以幫到你!

  學習計算機語言的方法

  學練相結合

  在學習新知識的同時,充分利用身邊的電腦,做到邊學新知識邊上機操作練習,這樣對于加強知識的穩(wěn)固具有十分重要的作用。

  深入學習細節(jié)過程中,對于電腦編程的學習,即要從整體把握,又要深入細節(jié)當中,了解并掌握知識的核心理念。

  努力學好一門計算機編程語言。根據(jù)電腦編程語言的相通性,當充分掌握一門計算機編輯語言后,對于其它語言的掌握時間將明顯減少。

  最好先從低層(級)語言學起,這樣就可以有效的掌握計算機的硬件低層知識,從而為更高級語言的學習打下良好的基礎。

  嘗試自己編寫若干個功能模塊,從而加強對計算機編程語言基礎能力的加強以及應用,并為新知識的學習奠定基礎。

  向別人學習,多看看別人寫的代碼,了解應用計算機編程解決問題的通用方法,從中提煉解決問題的通用方法。

  學好C語言的建議

  要讀就讀好書,否則不如不讀

  所有初學者面臨的第一個問題便是:如何選擇教材。好的開始是成功的一半,選擇一本優(yōu)秀的教材是事半功倍的關鍵因素。不幸的是,學校通常會幫你指定一本很差勁的C語言課本;而幸運的是,你還可以再次選擇。

  有興趣大家可以百度一下:)Kernighan和Ritchie的《The C Programming Language》(中譯名《C程序設計語言》)堪稱經(jīng)典中的經(jīng)典,不過舊版的很多內(nèi)容都已過時,和現(xiàn)在的標準C語言相去甚遠,大家一定要看最新的版本,否則不如不看。另外,即使是最經(jīng)典最權威的書,也沒有辦法面面俱到,所以手邊常備一本《C語言參考手冊》是十分必要的?!禖語言參考手冊》就是《C Reference Manual》,是C語言標準的詳細描述,包括絕大多數(shù)C標準庫函數(shù)的細節(jié),算得上是最好的標準C語言的工具書。

  順便提一句,最新的《C程序設計語言》是根據(jù)C89標準修訂的,而《C語言參考手冊》描述的是C99標準,二者可能會有些出入,建議按照C99標準學習。還有一本《C和指針》,寫得也是相當?shù)夭诲e,英文名是《Pointerson C》,特別地強調(diào)指針的重要性,算是本書的一個特點吧。不過這本書并不十分適合初學者,如果你曾經(jīng)學過C語言,有那么一些C語言的基礎但又不是很扎實,那么你可以嘗試一下這本書。我相信,只要你理解了指針,C語言便不再神秘。

  如果你已經(jīng)啃完了一本C語言教材,想要更進一步,那么有兩本書你一定要看。首先是《C Traps and Pitfalls》(中譯名《C陷井與缺陷》),很薄的一本小冊子,內(nèi)容非常非常地有趣。要注意一點,這本書是二十多年前寫成的,里面提到的很多C語言的缺陷都已被改進,不過能夠了解一些歷史也不是什么壞事。然后你可以挑戰(zhàn)一下《Expert C Programming》(中譯名《C專家編程》),書如其名,這本書頗具難度,一旦你仔細讀完并能透徹理解,你便可以放心大膽地在簡歷上寫“精通C語言”了。

  切記一個原則,不要讀自己目前還看不懂的書,那是浪費生命。如果你看不懂,那你一定是缺失了某些必需基礎知識。此時,你要仔細分析自己需要補充哪些內(nèi)容,然后再去書店尋找講述的這些內(nèi)容的書籍。把基礎知識補充完畢再回頭來學習,才會真正的事半功倍。

  Unix/Linux還是Windows,這是個很大的問題

  不同的編程環(huán)境會造就出不同思維的程序員。Windows的程序員大多依賴集成開發(fā)環(huán)境,比如Visual Studio,而Unix程序員更加鐘愛Makefile與控制臺。顯而易見,集成開發(fā)環(huán)境更容易上手,在Windows上學習C語言,只需要會按幾個基本的Visutal C++工具欄按鈕就可以開始寫Hello, World!了,而在Unix下,你需要一些控制臺操作的基本知識。有人也許認為Unix的環(huán)境更簡潔,但習慣的力量是很大的,大家都很熟悉Windows的基本操作,而為了學習C語言去專門裝一個Unix系統(tǒng),似乎有點不劃算。

  對于一個只懂得Windows基本操作、連DOS是什么都不知道的新手而言,盡快做一些有趣而有意義的事情才是最重要的。用C語言寫一個小程序遠比學習ls、cat等命令有趣,況且我們要專注于C語言本身,就不得不暫時忽略一些東西,比如編譯鏈接的過程、Makefile的寫法等等等等。

  所以我建議初學者應該以Visual C++ 6.0(不是VisualC++ .NET)或者Dev C++作為主要的學習環(huán)境,而且千萬不要在IDE的使用技巧上過多糾纏,因為今后你一定要轉向Unix環(huán)境的。Visual C++ 6.0使用很方便,調(diào)試也很直觀,但其默認的編譯器對C標準的支持并不好,而Dev C++使用gcc編譯器,對C99的標準都支持良好。使用順帶提一下,很多大學的C語言課程還在使用Turbo C 2.0作為實驗環(huán)境,這是相當不可取的,原因其一是TC 2.0對C標準幾乎沒有支持,其二是TC 2.0編譯得到的程序是16位的,這對今后理解32位的程序會造成極大的困擾(當然,用djgpp之類的東西可以使TC 2.0編譯出32位程序,不過那過于復雜了)。

  等你學完一本C語言的教材,你一定要轉向Unix平臺繼續(xù)學習,幾乎所有的C語言高級教程都是基于Unix平臺的(比如《C專家編程》)。轉變的過程是痛苦的,你需要面對的是各種紛繁復雜的命令,完全不同于Windows平臺的思考方式,但是這種痛苦是值得的。Unix與C是共生的,Unix的思考方式和習慣更加符合C語言的思考方式和習慣。在Unix下,你可以找到無數(shù)優(yōu)秀的源代碼供你盡情閱讀,你可以方便地查看某個庫函數(shù)的聯(lián)機手冊,還可以看到最優(yōu)秀的代碼風格(說到代碼風格,我會專門寫一篇文章詳細敘述)。歸結起來就是一句話:初學C語言,建議使用Windows系統(tǒng)和集成開發(fā)環(huán)境,在準備向“高手”方向努力時,請先轉向Unix平臺。

  萬事俱備,你就是東風

  書已選定,環(huán)境配置完成,正所謂萬事俱備,只欠你自己的努力了。請從書的前言開始,仔細地閱讀手頭的教材,很多人看書喜歡直接從第一章開始看,這是錯誤的做法。前言是作者對整本書的大體介紹,作者一般會告訴你需要什么基礎才能夠順利閱讀本書,這可以幫助你檢驗自己的基礎知識是否已經(jīng)具備??赐昵把?,還要瀏覽一下目錄,了解一下書的整體結構,順便給自己安排一下學習計劃。學習C語言,必需注意每一個細節(jié),書上的例子代碼一定要自己親自敲一遍,編譯執(zhí)行輸出都跟書上說的一致才能算是學完了一個例子,如果不一致,就要仔細找原因。出了書本上有的例子,自己還要“創(chuàng)造”一些例子,比如學習運算符優(yōu)先級的時候,可以寫幾個相同的表達式,在不同的位置加上括號,看看有哪些不同的行為,比如*p++和(*p)++,又比如a = b == c、(a = b) == c和a = (b == c)等等。自己抄的書上的例子以及改造之后的例子,還有自己“創(chuàng)造”的例子,都應該仔細地歸類保存,并且要在源代碼中寫上簡短的注釋,闡述這個例子的意圖。

  例子之后就是習題了,我建議初學者把所有的習題都獨立做一遍,然后對照答案的代碼,看看自己的代碼有那些不足,再試著修改自己的代碼。很多人不重視習題,這是極大的錯誤,因為作者通常會在習題中說明一些重要的道理,而不是單純地檢驗前面的知識。也許你認為這樣學習太慢,其實不然。學得細致就不用走回頭路,等你學到后面才發(fā)現(xiàn)自己前面沒搞清楚,那才是真的得不償失。一般說來,整本書讀完,你應該完成數(shù)千行乃至上萬行的代碼,無論是原封不動照抄書上的,還是自己心血來潮寫就的,都是今后繼續(xù)學習的一筆財富。以我自己舉例,閱讀《Windows核心編程》時(我只閱讀了3/4的內(nèi)容),除了抄書上的代碼,還自己寫了很多例子,一共有5574行(用unix下的wc工具統(tǒng)計),時隔多日,我早已記不清Windows的系統(tǒng)編程了,但只要花幾分鐘翻出以前的代碼看看,便會重新了然于胸。所謂好記性不如爛筆頭,就是這個道理。

  仔細讀書、認真抄寫源代碼、獨立完成習題外加更進一步的實驗,最后將所有的代碼留下,成為自己的經(jīng)驗和財富,絕對的辛苦,也絕對的事半功倍。當然,這種方式只適合學習需要精通的技術,如果不是學習C語言,你還要具體情況具體分析。還有非常非常重要的一點沒有提及──代碼風格。從最開始學習就必須強迫自己模仿最優(yōu)秀的代碼風格。因為代碼風格太重要內(nèi)容也太多,我會用專門的一篇文章來詳細討論,請大家關注《程序員之路──關于代碼風格》。

  題目是關于C語言,其實我主要想說說程序該怎么學,或者一點感悟罷了,在這里,我只想引用身邊的幾個人的例子,來談一下對程序學習的理解,我對程序產(chǎn)生興趣,是聽說程序可以作游戲,那時候是在初一,然而借來一本G-BASIC簡明教材后,我便傻了眼,陌生的詞匯,古怪的邏輯,都是些天文的中文譯本,頭疼了好一陣子。然而當時又沒有別的閑書可看,我就整天捧著那一本書,什么方法都試過了,甚至倒著看過了,都沒看出什么眉目,自己又沒有電腦,只能不停地大膽地想象,然后滿腦子的疑惑……

  在這里停一下,上面說的便是我學習的風格:總要經(jīng)歷一番波折,瞎折騰幾下,然后才會有偶然間的明悟-開竅了!我甚至沒見過幾個人有我這么笨,現(xiàn)在明白過來了,我總是一開始把事情想得過于復雜,造成狗咬刺猬的難堪的局面,然而竟然有意想不到的收獲!但是不建議大家模仿這種風格,起碼追女朋友的時候不能這樣,生活中很多機會在于接手的那一瞬間,失去就永遠找不回來了。

  現(xiàn)在回來,后來偶然間,我看懂了一行代碼,是print 語句,當時興奮得要命,又仔細看了這個看了那個,一下子看懂了很多東西,像是在霎那間被什么給擊中似的,立刻間醍醐灌頂。。。。

  初三在學校學了FOXBASE,基本上自學的,我發(fā)現(xiàn)了一件奇怪的事,我這人是出了名的記性不好,然而當時背程序中的命令卻是過目不忘,到現(xiàn)在還記得很多,也許是感興趣吧,也感謝我的微機老師給我提供自由上機的機會!后來我又自學了QBASIC,初四暑假又學了一點C,那時學C遇到不少困難,當時我們學校機房連C語言都沒有,我只好悶在家里,一本二級C教材,一本配套習題,整天發(fā)呆地想,把自己的腦袋當電腦cpu使,有時進入死循環(huán),有時又徹底崩潰。我花十幾天看完了一本書,做完了一本題,然而腦袋里充滿了疑惑,由于沒有上機實踐的機會,我就憑自己的猜測與推理己慢慢建立了一大堆理論,十分得意與自信,但后來證明大部分是錯的,害我花了很長時間去糾正,這是后話??墒?,還是那句話不破不立,不阻不行。就像我現(xiàn)在有了電腦,整天泡在互聯(lián)網(wǎng)的海洋里,感受著快餐文化,好久都沒靜下心來好好想點東西了.

  高中還上過幾節(jié)電腦課,只不過忙于應付高考,我將學程序的打算放棄了,到這里我該說下一個人了。高中時坐我旁邊一女生,她的文曲星里有BASIC,我偶爾拿過來編了幾個小程序玩,她看到后很感興趣,令人驚訝的是,她只看了三五個程序,聽我講了幾個命令的功能,就能根據(jù)自己的想象編出小動畫來,她此前是絕沒有學過程序的!我曾一度懷疑過她的智商,然而她程序是如此之快,卻讓我的眼都瞪大了好幾圈,比我當年高了好幾個境界!我后來經(jīng)常在想,是不是我當時的方法不對,程序到底應該怎樣學。。。

  一晃就到了大學,我碰到另一個讓我佩服的人,跟我一樣是學計算機的,他是偶爾看到我在編動畫,然后十分感興趣,便開始自學。他令人吃驚的是,指針,結構體,位運算等等,都沒搞懂(更不用說算法和數(shù)據(jù)結構),只學了三種程序結構,現(xiàn)在只學了C半年,便自己能編出貪吃蛇,俄羅斯方塊,掃雷,還有很多叫不出名字的小游戲來,現(xiàn)在又在寫黑白棋,我知道我確實是走了不少彎路。

  計算機編程語言C++ 語言淺析

  C++是C語言的繼承,它既可以進行C語言的過程化程序設計,又可以進行以抽象數(shù)據(jù)類型為特點的基于對象的程序設計,還可以進行以繼承和多態(tài)為特點的面向對象的程序設計。C++擅長面向對象程序設計的同時,還可以進行基于過程的程序設計,因而C++就適應的問題規(guī)模而論,大小由之。

  C++不僅擁有計算機高效運行的實用性特征,同時還致力于提高大規(guī)模程序的編程質(zhì)量與程序設計語言的問題描述能力。

  一、發(fā)展歷程

  世界上第一種計算機高級語言是誕生于1954年的FORTRAN語言。之后出現(xiàn)了多種計算機高級語言。1970年,AT&T的Bell實驗室的D.Ritchie和K.Thompson共同發(fā)明了C語言。研制C語言的初衷是用它編寫UNIX系統(tǒng)程序,因此,它實際上是UNIX的“副產(chǎn)品”。它充分結合了匯編語言和高級語言的優(yōu)點,高效而靈活,又容易移植。

  1971年,瑞士聯(lián)邦技術學院N.Wirth教授發(fā)明了Pascal語言。Pascal語言語法嚴謹,層次分明,程序易寫,具有很強的可讀性,是第一個結構化的編程語言。

  20世紀70年代中期,Bjarne Stroustrup在劍橋大學計算機中心工作。他使用過Simula和ALGOL,接觸過C。他對Simula的類體系感受頗深,對ALGOL的結構也很有研究,深知運行效率的意義。既要編程簡單、正確可靠,又要運行高效、可移植,是Bjarne Stroustrup的初衷。以C為背景,以Simula思想為基礎,正好符合他的設想。1979年,Bjame Sgoustrup到了Bell實驗室,開始從事將C改良為帶類的C(C with classes)的工作。1983年該語言被正式命名為C++。自從C++被發(fā)明以來,它經(jīng)歷了3次主要的修訂,每一次修訂都為C++增加了新的特征并作了一些修改。第一次修訂是在1985年,第二次修訂是在1990年,而第三次修訂發(fā)生在c++的標準化過程中。在20世紀90年代早期,人們開始為C++建立一個標準,并成立了一個ANSI和ISO(Intemational Standards Organization)國際標準化組織的聯(lián)合標準化委員會。該委員會在1994年1月25曰提出了第一個標準化草案。在這個草案中,委員會在保持Stroustrup最初定義的所有特征的同時,還增加了一些新的特征。

  在完成C++標準化的第一個草案后不久,發(fā)生了一件事情使得C++標準被極大地擴展了:Alexander stepanov創(chuàng)建了標準模板庫(Standard Template Library,STL)。STL不僅功能強大,同時非常優(yōu)雅,然而,它也是非常龐大的。在通過了第一個草案之后,委員會投票并通過了將STL包含到C++標準中的提議。STL對C++的擴展超出了C++的最初定義范圍。雖然在標準中增加STL是個很重要的決定,但也因此延緩了C++標準化的進程。

  委員會于1997年11月14日通過了該標準的最終草案,1998年,C++的ANSI/IS0標準被投入使用。通常,這個版本的C++被認為是標準C++。所有的主流C++編譯器都支持這個版本的C++,包括微軟的Visual C++和Borland公司的C++Builder。

  二、編程開發(fā)

  集成開發(fā)環(huán)境(IDE)

  Visual Studio (Visual C++)

  C++ Builder

  kDevelop

  Anjuta

  Code::Blocks:開放源碼的全功能的跨平臺C/C++集成開發(fā)環(huán)境。

  Visual Mingw

  Ideone

  Eclipse CDT

  Compilr

  Code Lite

  Netbeans C++

  集成開發(fā)環(huán)境(IDE),功能齊全,調(diào)試功能很強,程序編好后,可以立刻在環(huán)境中調(diào)試以獲得初步測試結果,然后,可以方便地做成beta版形式,拿到實際環(huán)境中進一步測試,最后做成軟件發(fā)行版。

  編譯器

  Dev C++

  Ultimate++

  Digital Mars

  C-Free

  MinGW

  Tiny C Compiler

  三、語言特點

  支持數(shù)據(jù)封裝和數(shù)據(jù)隱藏

  在C++中,類是支持數(shù)據(jù)封裝的工具,對象則是數(shù)據(jù)封裝的實現(xiàn)。C++通過建立用戶定義類支持數(shù)據(jù)封裝和數(shù)據(jù)隱藏。

  在面向對象的程序設計中,將數(shù)據(jù)和對該數(shù)據(jù)進行合法操作的函數(shù)封裝在一起作為一個類的定義。對象被說明為具有一個給定類的變量。每個給定類的對象包含這個類所規(guī)定的若干私有成員、公有成員及保護成員。完好定義的類一旦建立,就可看成完全封裝的實體,可以作為一個整體單元使用。類的實際內(nèi)部工作隱藏起來,使用完好定義的類的用戶不需要知道類是如何工作的,只要知道如何使用它即可。

  支持繼承和重用

  在C++現(xiàn)有類的基礎上可以聲明新類型,這就是繼承和重用的思想。通過繼承和重用可以更有效地組織程序結構,明確類間關系,并且充分利用已有的類來完成更復雜、深入的開發(fā)。新定義的類為子類,成為派生類。它可以從父類那里繼承所有非私有的屬性和方法,作為自己的成員。

  支持多態(tài)性

  采用多態(tài)性為每個類指定表現(xiàn)行為。多態(tài)性形成由父類和它們的子類組成的一個樹型結構。在這個樹中的每個子類可以接收一個或多個具有相同名字的消息。當一個消息被這個樹中一個類的一個對象接收時,這個對象動態(tài)地決定給予子類對象的消息的某種用法。多態(tài)性的這一特性允許使用高級抽象。

  繼承性和多態(tài)性的組合,可以輕易地生成一系列雖然類似但獨一無二的對象。由于繼承性,這些對象共享許多相似的特征。由于多態(tài)性,一個對象可有獨特的表現(xiàn)方式,而另一個對象有另一種表現(xiàn)方式。

  四、工作原理

  C++語言的程序因為要體現(xiàn)高性能,所以都是編譯型的。但其開發(fā)環(huán)境,為了方便測試,將調(diào)試環(huán)境做成解釋型的。即開發(fā)過程中,以解釋型的逐條語句執(zhí)行方式來進行調(diào)試,以編譯型的脫離開發(fā)環(huán)境而啟動運行的方式來生成程序最終的執(zhí)行代碼。

  生成程序是指將源碼(C++語句)轉換成一個可以運行的應用程序的過程。如果程序的編寫是正確的,那么通常只需按一個功能鍵,即可搞定這個過程。該過程實際上分成兩個步驟。

  第一步是對程序進行編譯,這需要用到編譯器(compiler)。編譯器將C++語句轉換成機器碼(也稱為目標碼);如果這個步驟成功,下一步就是對程序進行鏈接,這需要用到鏈接器(linker)。鏈接器將編譯獲得機器碼與C++庫中的代碼進行合并。C++庫包含了執(zhí)行某些常見任務的函數(shù)(“函數(shù)”是子程序的另一種稱呼)。例如,一個C++庫中包含標準的平方根函數(shù)sqrt,所以不必親自計算平方根。C++庫中還包含一些子程序,它們把數(shù)據(jù)發(fā)送到顯示器,并知道如何讀寫硬盤上的數(shù)據(jù)文件。

猜你喜歡:

1.怎么學好一門計算機語言

2.學習電腦知識

3.計算機c語言基礎知識

4.c語言程序設計心得6篇

5.如何學習計算機語言才有效

3806894