如果你聽說過編程,你也聽說過C。它是世界上最古老的編碼語言之一。有人害怕,也有人喜歡。
對於初學者來說,C有一個壞名聲。學習這門語言有很多很好的理由,但是在開始學習的時候要記住一些基本的技巧。
要理解什麼是C編程語言,在繼續之前學習什麼是編碼是值得的!
C語言是一種低級程序設計語言。C更接近計算機運行的實際機器代碼。這使得它難以置信的快,但具有挑戰性的使用,並有能力打破你的系統,如果你不小心!
如果C是如此複雜和危險,為什麼要學習它?
好吧,C無處不在。
有些人認為,在學習其他編程語言之前先學習C語言,可以更好地理解整個編程。
學習C也是學習你的電腦是如何工作的。C程序員可以對代碼影響系統的方式有更深的理解,並因此發現學習其他編程語言更容易。
數據有不同的類型。重要的是要知道您使用的是哪種類型的數據,因為它們很容易混淆。例如,知道數字5可以是整數(如數字5),也可以是字符(書面字符5)。
int number = 5;現在沒有混淆,變量號被賦予整數值5。C需要被告知需要什麼類型才能按您希望的方式工作。
數據類型以及如何將它們分配給變量是C課程的一個重要部分,理解它很重要。
在所有編程中,知道如何給數據提供正確的類型是一項重要的技能,但在C語言中卻是必不可少的。
如果C是您正在學習的第一門語言,那麼您很可能是第一次學習運算符。運算符是指示編譯器執行任務的符號。也許最簡單的例子是+運算符。
answer = number + anotherNumber;猜測這段代碼將兩個整數變量加在一起是沒有獎勵的。不過,並不是所有的操作符都這麼簡單。
C在算術、賦值和邏輯等方面使用了許多運算符。瞭解這些操作符中的每一個都會幫助您更快地掌握核心編程概念。
C可能是低級的,但它確實有一組庫來幫助創建程序。數學運算、特定於語言環境的數據(如貨幣符號)以及各種變量類型和宏都是在庫中定義的。
您可以通過將這些庫包含到代碼中來使用它們。舉個例子:
#include <stdio.h>int main(){ printf("Hello, World!"); return 0;}在C中,輸出到控制檯的簡單操作需要包含stdio.h(標準輸入/輸出)頭文件。
有15個C語言編程的標準庫,遵循這些庫的操作指南將有助於您的學習。
C會完全按照你說的去做,當一些事情不合理時,它不會抱怨,而是會繼續努力工作。這不僅會破壞你的程序,而且會給你的整個系統帶來問題!
雖然這聽起來很戲劇性,但通常不是。你不會弄壞你的電腦。不過,你可能會遇到一些奇怪的蟲子。舉個例子:
這段代碼將問題打印到控制檯,然後掃描用戶輸入的內容並將其存儲為整數。這個程序的目的是在把答案打印給用戶之前,把它們相加,然後減去。
你可能已經看到這裡有個問題了。輸出當然沒有意義!
因為我們從來沒有實際減去這些值,所以在初始化時,減去的變量有一個無意義的值。其他編程語言可能會警告您從未給減去的變量賦值。不是C。
這個例子很容易直觀地調試,但是有些代碼有幾千行長,而且非常複雜,C語言不能幫助您找出錯誤所在。相反,C給了你一個愚蠢的答案,卻沒有辦法找出原因。還是有?
由於C代碼可能包含不需要的行為,它可能會導致難以跟蹤的錯誤,而且沒有明顯的原因。為了防止自己完全失去理智,你應該習慣於調試你的代碼。
像GDB這樣的調試器可以幫助實現這一點。這裡,GDB在上面的錯誤腳本上運行。
通常,程序會一直運行到完成,或者崩潰。調試器允許您逐行分解代碼。在這裡,在第10行和第13行設置了斷點,我們懷疑問題可能出在這裡。
然後,程序正常運行。輸入數字後,程序在第10行後暫停。調試器被要求打印subtracted的值,該值顯示為37。這是有道理的,我們還沒有告訴減去一個值,所以它有一個隨機值。
然後,調試器繼續。我們在第13行之後重複這個過程,然後打印減法結果,結果發現值沒有改變。
結果我們完全忘記了計算,而是選擇留下一行可疑的空代碼。謝謝調試!
GDB是C程序員最好的朋友,你越早學會使用它,你就會越高興!
C語言是一種終生的學習體驗,有些東西我們在本文中甚至沒有涉及到,比如指針和內存分配。
雖然C的名聲不好,但你可以通過實踐來學習,所以要動手做,從你自己的C編程初學者項目開始。
圖片來源:sjenner13/照片
...把經典放在櫃子裡。網際網路幫助我們打扮自己。你可以設計自己的造型,無論你是胖乎乎的,矮個子,肌肉發達的,還是苗條的。穿得好的唯一推動力是——你的穿著方式會影響你的思維。 ...
到目前為止,程式設計師更有趣。好吧,這可能不是完全正確的,它不應該成為成為程式設計師的唯一原因,但這是一個值得考慮的問題。你為什麼想成為一名程式設計師? ...
... 你喜歡我們的解釋嗎?你還想學什麼Photoshop技巧?請在下面的評論中告訴我們! ...
... 你可能聽說過C是一種“低階語言”,在程式設計的上下文中,“級別”是對你與計算機本機指令集的接近程度的描述。級別越低,就越接近於編寫機器程式碼。級別越高,語言所做的抽象就越多,從而使您遠離...
... 沒有人告訴你如何規劃你的職業生涯。當你學會一些技巧的時候,你已經通過了一些轉門。如今,得益於社交媒體和即時通訊,求職已經發生了變化。你用最新的技能更新過自己嗎?從著名的繆斯女神那裡把你所有的鴨子排...
學習程式設計似乎是一項艱鉅的任務。幸運的是,這並不像看上去那麼難。有了大量的線上和線下資源、專門的社群和專家來跟蹤社交媒體,學習程式設計比過去簡單多了。對你的心理健康有好處。即使是孩子也可以很早就開始...
...現。如果你是一個經驗豐富的使用者,那麼對於日曆應用程式和它的技巧,你可能已經沒有什麼可學的了。 ...