只學習了c語言,為什麼學不會c語言

本文目錄一覽:

我是電子信息工程的,現在大一,目前只學了c語言,想自學單片機,不知道可不可行

當然可行,而且現在你大一就開始學習的話,到大三基礎肯定就很強啦,我也是電子信息工程專業的,大一的時候沒你這種覺悟,先在在學嵌入式Linux,就比較吃力,我大一暑假參加了單片機培訓,也是零基礎開始的,所以給你以下建議哦。

繼續加強C語言學習,因為C基礎真的十分鐘要,而且C的學習永無止盡啊。

下載一些單片機(51,大學期間用的比較多)資料自己開始看。

網上有很多視頻教程,建議找一些列的看看,不要急慢慢學。

C語言學精通了能幹什麼,只學了C語言的人,請高級程序員回答?

這個問題有點像,學習英文有什麼用?回答是,英文沒有任何用途,但是用英文寫的書籍、資料確實相當的有用,甚至是不可缺少的。 同樣,僅僅孤立的學習c,除了能通過考試,也沒有任何用,但是問題就是目前大多數的公司的項目,以及開源項目,都是用c來描述的,他們很有用。

c無所不能,僅僅懂得語法卻是一無是處。

如果你精通了windows下的api,那麼你可以用c開發任何的windows應用程序,當然也可以不用c,用任何一門你喜歡的語言,只要你有相應的編譯器。

如果你想開發其他os的應用程序,也只要學習相應os平台的api即可。

如果你想開發一個驅動程序,你應該學習你所對應操作系統的驅動框架以及硬體的知識,最後再用c來實現,最後的實現也許用的最多的就是賦值語句,例如向地址為0x7F000000地方寫一個數0x1234,至於為什麼是這個地址以及為什麼要寫這個數,你可能研究了一周的datasheet才得出結論。

如果你的強項是演算法,假如你能把一張8G的dvd能壓縮成8M並且畫質還可被大眾接受,那麼你只需要把論文發表,論文上用數學的原理把這個事情解釋清楚就可以了,到時候會有無數的小弟幫你編程實現。如果你沒有達到這個高度,你想要看看其他人的演算法,這個演算法的實現雖然說和具體語言沒有任何關係,可大部分的還是c描述的,所以學了c也不吃虧。

說多了,其實還有個問題想說,就是為什麼要從c開始

如果說這個行業是一個江湖,那麼各門語言好比兵器,既然使寶劍人的多,以及大多數的武林秘籍都是劍譜,那肯定有他的道理,不要為了耍酷就選一個狼牙棒或者九耳大環刀之類的東西,因為你上來就選這麼一個東西,不好和人組隊啊,就不利於你的提高,反而踏踏實實練劍的人到了一定界別,無論什麼兵器,拿過來熟悉熟悉就能用,所以那些爭論那種兵器好的人有兩種,一種是剛學武功的人,會了一招半式跟著瞎起鬨的,他用什麼就說什麼兵器好;一種就是拿狼牙棒的高手,這種人比較陰暗,他怎麼練到這個地步的他不說,只說他的狼牙棒有多好。

只學了C,也不想學C++,能學會VC嗎?

如果C語言比較好,也不去看VC,會搞得你頭暈,讓你失去信習。

可以先去找本 C++程序設計 這種書看一下。可以不怎麼關心前面的內容。但是後面的類和對象以及類的派生、多態、繼承等定要看!!!這是一種思維的轉變,你看就是明白了。

把這些搞懂就可以去看VC了,但還是要下苦功夫!

學了C語言可以幹什麼

c語言學會了能幹的事情有:

1、做嵌入式開發;

2、寫漂亮的界面;

3、做伺服器開發;

4、可以寫遊戲;

5、可以寫驅動程序;

6、可以寫外掛;

7、可以做視頻圖片流媒體處理;

8、可做網頁和爬蟲相關的編程;

9、可以進行黑客編程等等。

C語言是一種計算機程序設計語言。它既具有高級語言的特點,又具有彙編語言的特點。它由美國貝爾研究所的D.M.Ritchie於1972年推出。1978後,C語言已先後被移植到大、中、小及微型機上。它可以作為工作系統設計語言,編寫系統應用程序,也可以作為應用程序設計語言,編寫不依賴計算機硬體的應用程序。

計算機專業學了快一年,只會一點C語言,你還說自己是IT專業的?

大家好,我是辣條。

目錄

一、C/C++入門階段

學習視頻推薦:C++入門基礎【B站 小甲魚】

二、C/C++開發進階

學習視頻推薦:C++進階【慕課網 免費課】

三、C++開發高級

視頻教程:程序設計【中國大學MOOC 】

四、操作系統

教程鏈接:6.828 :操作系統工程

五、資料庫

視頻教程:MySQL資料庫從入門到實戰課【CSDN 課程】

六、計算機網路

教程鏈接:計算機網路試題【牛客網】

最近在某乎上看到這個問題,他的問題如下:

985末流計算機大一,一直跟著學校走,上學期學c語言,下學期學面向對象,感覺學完之後只會寫點簡單的數學題或者簡單的管理系統什麼的。甚至都不知道什麼是配置環境。但是身邊的同學很多都可以寫頁面豐富的 遊戲 或者網站了,甚至還有做項目的。是我太菜了嗎?想自學還沒有方向,什麼web前端、github我都不知道是什麼,前端後端什麼的也不清楚,請問怎麼樣才能自學提升自己的編程能力?

好傢夥,看到這個問題竟不知道怎麼回答,我也不是科班的, 怎麼提升我也不知道,怎麼給你整理一些學習內容給你,多看多練多做。

剛入門的時候我們主要是學習培養編程思維和動手能力,深刻理解面向過程和面向對象的思想方法,這對以後的程序員之路非常重要!

所以學習語言更為重要:

面向對象編程思想;類的封裝,構造和析構、靜態成員、對象管理;類的構造(有參構造函數、無參構造、拷貝構造、默認構造函數)和析構;對象動態管理、友元函數、友元類、操作符重載; C++編譯器對象管理模型分析;類對象的動態管理(new/delete);友元函數和友元類;運算符重載(一元運算符、二元運算符、運算符重載難點、項目開發中的運算符重載);類的繼承、多繼承及其二義性、虛繼承;多態(概念、意義、原理剖析、多態案例);虛函數、純虛函數、抽象類(面向抽象類編程思想案例);函數模板、類模板,模板的繼承。

C++類型轉換;C++輸入輸出流(標準I/O 文件I/O 字元流I/O);C++異常處理(異常機制、異常類型、異常變數、異常層次結構、標準異常庫);利用一些IDE開發工具:諸如Windows平台VC系列:VC++6.0(比較古老) ;Visual Studio2013, Visual Studio2015,Visual Studio2017,Visual Studio2019;Mac平台的XCode系列,還有CodeBlock,另附一些高級編輯器Notepad++, EditPlus,UE等一些開發工具的常用設置和一些常見快捷鍵的使用。

這個階段推薦以下兩本書:

《Essential C++》 這是一本內容不多但很實用的C++入門書籍,強調快速上手與理解C++編程。本書主要圍繞一系列逐漸複雜的程序問題,以及用以解決這些問題的語言特性展開講解。你不只學到C++的函數和結構,也會學習到它們的設計目的和基本原理。

《C++ Primer》 本書對C++基本概念、技術、以及現代C++編程風格進行了全面而且權威的闡述,是C++初學者的最佳指南;本書可以幫助你編寫實用的程序,而無需首先精通每個語言細節。對於中高級程序員,本書也是不可或缺的參考書。

在第二階段學習的時候,就是比較重要的了,C++開發的進階之路,更是一個讓自己找份薪水比較體面的工作的籌碼。

C++進階之STL:

STL = Standard Template Library,即標準模板庫。這是提高開發效率的極品工具。通過學習此階段,應掌握泛型編程技巧,理解容器類在C++語言中的應用模式,以及熟練掌握全部STL類的使用方法。

C++進階之設計模式:

決定一個項目成敗最重要的因素是項目總體的設計,通過本階段的學習,可掌握面向對象編程中重要的一環,是編碼前建模的技巧所在。單例模式;工廠模式;代理模式;迭代模式等,這些都是你要掌握的哦。

C++進階之數據結構基礎:

這是所有編程語言中最應該學習的部分,程序組成的基礎之一。順序存儲、鏈式存儲、循環鏈表;

雙向鏈表、棧(順序和鏈式)、隊列(順序和鏈式);

棧的應用、樹基本概念及遍歷、二叉樹;

排序演算法、並歸演算法、選擇、插入、快速、希爾。

這個階段推薦以下幾本書:

《Effective C++》和《More effective C++》 作者是Scott Meyers。你應該熟讀它們,並清楚地理解每個項目。該書圍繞55條準則,每一條都介紹了一個可讓你寫出更好的C++程序代碼的方法,並以特別設計過的例子詳加討論。

《Exceptional C++(C++編程剖析)》和《More exceptional C++》 這兩本書中都包含了40個C++編程問題,這些問題會讓你磨練自己的技能,最終成為優秀的C++程序員。這些問題是Herb Sutter精心挑選,與ISO/ANSI C++官方標準相一致,幫助程序員在設計、架構和編碼過程中保持良好的風格,從而使編寫的C++軟體更健壯、更高效。

《Inside the C++ object model(深度 探索 C++對象模型)》 本書專註於C++面向對象程序設計的底層機制,包括結構式語意、臨時性對象的生成、封裝、繼承,以及虛擬——虛擬函數和虛擬繼承,幫助你理解程序的底層實現,以便寫出更高效的代碼。

《The design and evolution of C++(C++語言的設計與演化)》 本書作者也是C++語言的設計者Bjarne Stroustrup,作者在書中綜合性地介紹了C++的發展 歷史 ,C++中各種重要機制的本質意義和設計背景,這些機制的基本用途和使用方法,討論了C++所適合的應用領域及其未來的發展前景,既沒有忽略關鍵性的詳情,又沒有過多地陷入技術細節。

這個階段幾乎伴隨了職場後續的整個生涯,只有更精沒有最精,C++高手之路,任重道遠!

這個階段需要掌握的一些C++技能:

C++進階之QT開發:

掌握QT類庫構架,圖形界面開發模型;掌握QT開發技巧,消息機制,圖形處理;掌握QT網路編程,UDP,TCP使用方式;掌握QT文件處理方式,序列化;掌握QT在windows,linux,ios,android不同平台下的移植技術

C++進階之Windows/Linux網路伺服器:

掌握Unix/Linux平台開發方式;熟練使用系統調用;熟練Unix/Linux內存管理,進程,線程調度;掌握MFC界面開發,網路編程;熟悉網路伺服器開發方式,熟練編寫TCP,UCP網路服務程序;掌握同步/非同步IO模型在網路編程中的使用方式。

C++進階之資料庫開發:

掌握SQL語言的實用技巧。Oracle,MySQL資料庫的使用方式。

如果你能熟練掌握以上列出的技能,具備解決複雜問題和技術難點的能力,而且你能獨立開發一些比較複雜的功能模塊,這個時候C++基本就沒有太多能難到你的東西了!

國外有很多優秀的操作系統公開課,比如mit6.828、哈弗OS/161。這類課程都會給你提供一個mini os殼程序,相當於一個核心組件,剩下的你可以自由發揮。比如你可以設計線程管理、文件系統等等。相比只是看操作系統的書籍,這種學習方法的效率簡直高100倍!

國內說資料庫就是mysql,這點要相信我!

首先概覽下mysql的知識體系:

基礎:

調優:

核心原理:

架構與運維:

推薦兩本書:

1.《MySQL必知必會》 這本書講的非常全,從基本概念,到查詢到插入新建表,用戶的管理,都有具體的例子,非常適合沒有任何基礎的同學來學習Mysql,總之這本書學習的方法就是:1、十分鐘了解下資料庫的基本概念 2、找到練手的資料庫 3、對照著上面的內容去敲。本書里也有大量的內容是講sql的,可以結合w3c的sql教程一起,有取捨地看。

2.《資料庫系統概念》這本書是dba必看的。

看完這些並且實踐+思考之後,可以算入門了。

接下來對於希望深入學習的童鞋:

我推薦幾本書(很多大神都這麼推薦),《高性能MySQL(第3版)》、 《MySQL技術內幕(第4版)》,《MySQL技術內幕 InnoDB存儲引擎》,《深入理解MySQL》還有Mysql的官網。讀完這些東西,再加些豐富的經驗,理論上來講就具備DBA的水平了。

網路知識工作後非常非常重要!

我分三個階段來介紹:

1. 入門

第一本書 建議看謝希仁的《計算機網路基礎》

2.進階

然後第二本要看 《TCP/IP詳解1:協議》,這個階段需要多思考和動手網路在LINUX系統上發揮的最淋漓盡致,所以在學習的時候最好學習LINUX配合使用,學習LINUX,推薦《鳥哥的LINUX私房菜:基礎篇》。

學習網路過程中,要不斷抓包分析等,自己能寫些簡單的應用來發包更是完美。抓包工具推薦:LINUX環境下用TCPDUMP,windows環境下用 wireshark。這個階段寫習完後,已經是個小高手了。。

主要技能應該是 : 對TCP,IP,DNS,icmp等協議應該都蠻熟了得了,dhcp/tftp/ftp等協議也應該都懂些,重點是要學會如何分析一個協議及LINUX系統的基本操作也差不多了。

3.高手階段

這個階段需要有一點的編程能力,指C/C++編程。主要學習的方向是協議的實現和協議的架構原理

協議的實現方面, 主要學習底層協議(指傳輸層及以下)的實現, 這些協議都是在操作系統層面實現的,最好的教材是《TCP/IP詳解:實現》。至於網路架構這塊,可以學習《計算機網路》這本書。

貼一下互聯網頭部大廠2020年校招相關崗位的薪資待遇:

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/278798.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-20 15:01
下一篇 2024-12-20 15:01

相關推薦

  • AES加密解密演算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密演算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES演算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演著非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28
  • Python作為中心語言,在編程中取代C語言的優勢和挑戰

    Python一直以其簡單易懂的語法和高效的編碼環境而著名。然而,它最近的發展趨勢表明Python的使用範圍已經從腳本語言擴展到了從Web應用到機器學習等廣泛的開發領域。與此同時,C…

    編程 2025-04-28
  • Python基礎語言

    Python作為一種高級編程語言擁有簡潔優雅的語法。在本文中,我們將從多個方面探究Python基礎語言的特點以及使用技巧。 一、數據類型 Python基礎數據類型包括整數、浮點數、…

    編程 2025-04-28

發表回復

登錄後才能評論