一、工具的選擇
工欲善其事,必先利其器。相信我,選擇VS不會錯(推薦版本2013~2019)。
①為什么不選VC6.0?這個編譯器是98年的軟件,老舊且兼容性差。
②為什么不選Devc++?這個軟件十多年前就停止更新了,敲出的代碼不美觀,不利于好的代碼風格的形成
③為什么不選CodeBlock?不主流,需要配置,不適合初學者
④為什么不選VSCode?需要配置環境,不適合初學者
VS提供的錯誤檢查和格式縮進對新手很友好
二、工具的下載安裝
視頻肯定比博文講的清楚,實踐性也更強
VS2019安裝教程VS2013安裝教程
三、如何學習一門語言
作者當然沒有資格對這一問題下定斷言,只是提供作者這兩個月以來的學習經驗,幫助新手少走彎路
上課篇:如果是選擇視頻學習的,不要死揪著不懂的地方,要跟上老師的上課思路。剛開始學肯定都會有很多疑問,但之后肯定都會講到。所以上課要先試著接受老師所講的知識
筆記篇:如果說老師講的知識都在課件上或書本上的話,上課不要急于記筆記,而是在草稿本上記下上課的思路。如果能照著上課思路寫成博文那說明掌握的很好,所以也可以說把CSDN當成筆記本來用 。同時推薦一些做筆記的軟件:有道云筆記Xmind印象筆記
實戰篇:1.代碼一定要敲(敲重點啦),體驗自己成功寫出代碼的快樂。2.看待代碼有三個層次——看代碼是代碼(小白),看代碼是內存(高手),看代碼是代碼(大佬)。所以在學習時要主動加深對內存的理解。3.遇到問題要學會調試(之后會專門提到)——程序員的必修課。
四、創建第一個.c文件
至此文件已經創建好了。
(解決方案資源管理器在這里)
[相信你對上面沒提到的細節有些疑惑,但還是那句話,先接受現有的知識,其他的以后都會懂 ]
五、寫下第一段代碼
按下ctrl+fn+f5(或者Ctrl+f5)可以在屏幕上打印hello world。現在我們從三個方面解釋這段代碼:
知識點1:main函數
特點:main函數為函數入口,有且只有一個,即在一個工程下即使有多個文件也只可以有一個main函數,試想一個文件如果有多個入口那到底從哪里進去呢?
規范性:
1.這里int不寫雖然系統默認返回類型為int,但是作為優秀的程序員們,我們要力求規范
2.return不寫雖然也不會報錯,但還是上面提到的規范規范問題
知識點2:庫函數
是什么:庫函數是 C語言提供的,使用的時候只需要引用即可。引用的方式是#include< xx.h >這里的printf所對應的庫函數位于stdio頭文件下,引用這個頭文件就可以使用printf函數了
接下來我們認識一下學習到的第二個函數printf
printf函數功能是是將特定格式的數據輸出到屏幕上,沒有加格式就原封不動的打印
我們實踐一下加深理解:具體結果請大家實踐操作
知識點3:int——數據類型
這個int是什么東西,有什么用呢?
是什么:int表示是一種數據類型
前面說過main是一個函數,函數前面加類型表示這個函數的返回值(函數的知識之后會講)
這里重點講一下數據類型
【short=short int long =long int (在這里int被省略了沒寫而已)】
①為什么有類型
試想一下我們描述超市里的一件商品,總得有名字吧,也總得有編號吧,價格肯定也不能少吧,所以我們怎么可能用一種類型就描繪出所有的內容呢。不同類型代表不同的含義,他們向內存申請的空間可是不同的,這很好理解。現在我們分析一下不同類型的大小。
②類型的大小
我們首先介紹一個關鍵字sizeof(他也是一個運算符。敲重點!!!sizeof不是函數,也不能認為關鍵字和運算符一樣),他的作用是返回某個類型的大小。
認識了sizeof之后我們用他來求各個類型的大小(單為字節B)
<關于long的大小等于int的理解>C標準只規定了long的大小>=int即可,具體的大小由編譯器決定。
之前提到,不同的類型決定了向計算機申請的內存大小,那內存的單位是怎么理解的?
一個b可以看成是一個小格子,一個B則是八個小格子組成。計算機中采用二進制存儲,也就是說一個格子可以表達兩種信息(0 或者 1,很好理解,計算機是很多“開關”組成的,開關要么開要么關,于是就有了0 1),那么一個B可以表示的信息則有2^8種。
③類型的意義
根據前面提到的我們可以算出1個int大小可以表達的信息有2^32(看成是有序的),而一個short表示的信息有2^16,差別還是很大的。假設我們要存儲一個人的年齡,總不會超過四位數吧,用int表示的話豈不是大材小用。雖然short也大很多,但浪費的內存更少。所以從中我們可以看出類型的意義在于合理的向內存分配空間。
希望對大家有幫助!
審核編輯 :李倩
-
C語言
+關注
關注
180文章
7632瀏覽量
141587 -
編譯器
+關注
關注
1文章
1661瀏覽量
50197
原文標題:經驗分享丨零基礎第一次接觸C語言,應該怎么上手?
文章出處:【微信號:cyuyanxuexi,微信公眾號:C語言編程學習基地】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
【教程】零基礎!手把手教你使用STM32F4進行E22-400T22S編程通信

零基礎學習LuatOS編程:快速上手開發實戰教程!

一技在手,醫療無憂!零基礎轉行高薪醫療維修工程師
【「零基礎開發AI Agent」閱讀體驗】+讀《零基礎開發AI Agent》掌握扣子平臺開發智能體方法
【「零基礎開發AI Agent」閱讀體驗】+ 入門篇學習
零基礎搭建基于STM32的M系列LoRa模塊透傳例程(上)

《零基礎開發AI Agent——手把手教你用扣子做智能體》
單片機C語言編程寶典大全,初學必備【強推下載!】
零基礎開發小安派-Eyes-S1 外設篇 ——I2C

評論