tft每日頭條

 > 生活

 > c語言入門自學應該怎麼做

c語言入門自學應該怎麼做

生活 更新时间:2024-11-20 22:25:20

C語言是當前所有開發技術中使用較為廣泛的一門語言,從它誕生之日起就深受程序員的喜愛。随着C語言的普及,後來的開發語言都或多或少地借鑒或遵循了它的一些模式。另外,C語言是計算機編程領域中使用最早的高級語言之一,它的出現推動了軟件行業的迅猛發展。本章将簡要介紹C語言的基本知識,為讀者學習後面的内容打下基礎。

1.1 計算機應用基礎

計算機(computer)是一種能接收和存儲信息,并按照内部存儲的程序對輸入的信息進行加工、處理,然後把處理結果進行輸出的高度自動化的電子設備。本節介紹計算機應用的基礎知識,為讀者學習後面的知識打下基礎。

1.1.1 中央處理器

中央處理器就是我們平常說的CPU(Central Processing Unit),是一塊超大規模的集成電路,是計算機的運算核心和控制核心。它主要包括算術和邏輯單元(Arithmetic and Logic Unit,ALU)和控制單元(Control Unit,CU)兩大部件。此外,它還包括若幹個寄存器和存儲器及彼此之間的數據、控制與狀态總線。它與内部存儲器和輸入/輸出設備合稱為電子計算機的三大核心部件。其功能主要是解釋計算機指令以及處理計算機軟件中的數據。計算機的性能在很大程度上由CPU的性能所決定,而CPU的性能主要體現在運行程序的速度上。

1.1.2 位和字節

1.位

位(bit)又稱為比特,bit是Binary System的縮寫。在現實應用中,位有如下兩個含義。

(1)它是計算機專業術語,是信息量單位。二進制數的一位所包含的信息就是一位,如二進制數0100就有4位。在計算機應用中,二進制數“0”和“1”是構成信息的最小單位,稱作“位”或“比特”。

(2)二進制數字中的位是信息量的度量單位,為信息量的最小單位。數字化音響用電脈沖表達音頻信号,“1”代表有脈沖,“0”代表脈沖間隔。如果波形中每個點的信息用4位一組的編碼來表示,則每組編碼有4位。位數越多,表達的模拟信号就越精确,對音頻信号的還原能力越強。

2.字節

字節(Byte),是計算機信息技術中用于存儲容量的一種計量單位,有時在一些計算機編程語言中也表示數據類型和語言字符。

在計算機應用中,由若幹位組成1字節。字節由多少位組成取決于計算機的結構。通常來說,微型計算機的CPU多由8位組成1字節,并用此表示一個字符的代碼。構成1字節的8位被看作一個整體,字節是存儲信息的基本單位。在大多數情況下,計算機存儲單位的換算關系如下:

1B=8bit 1KB=1024B 1MB=1024KB 1GB=1024MB

在上述關系中各個單位的具體說明如下:

  • B:表示字節。
  • bit:表示位。
  • KB:表示千字節。
  • MB:表示兆字節。
  • GB:表示吉字節。
1.1.3 二進制

二進制是計算機技術中廣泛采用的一種數制,是使用0和1兩個數碼來表示的數。二進制的基數為2,進位規則是“逢二進一”,借位規則是“借一當二”,這是由18世紀德國數理哲學大師萊布尼茲發現的。當前的計算機系統使用的基本上都是二進制系統,數據在計算機中主要是以補碼的形式進行存儲的。計算機中的二進制是一個非常微小的開關,用“開”來表示1,用“關”來表示0。因為它隻使用0、1兩個數字符号,所以非常簡單方便,易于用電子方式來實現。

下面介紹如何将十進制數轉換成二進制數。

(1)把正整數轉換成二進制。

轉換原則是除以2取餘,然後倒序排列,高位補零。也就是說,将正的十進制數除以2,得到的商再除以2,依次類推,一直到商為0或1,然後在旁邊标出各步的餘數,最後倒着寫出來,高位補零即可。例如,将十進制數字42轉換為二進制的步驟為:42除以2得到的餘數連在一起為010101,然後将得到的餘數倒着排一下就會得到數字42,所對應的二進制數是101010。但是因為在計算機内部表示數的字節單位是定長的(如8位、16位或32位),所以當位數不夠時,需要在高位補零。十進制數42轉換成二進制數的結果是101010,它的前面缺少兩位,因此将十進制數42轉換成二進制數的最終結果是:00101010。

(2)把負整數轉換成二進制。

轉換原則是先将對應的正整數轉換成二進制,最後對二進制數取反,最後将結果加1。以十進制負整數−42為例,将42的二進制形式(00101010)取反得到的結果是11010101,然後再加1的結果是11010110。所以負整數−42轉成二進制數的最終結果是:11010110。

(3)把二進制整數轉換成十進制。

轉換原則是先将二進制數補齊位數。如果首位是0則代表它是正整數;如果首位是1則代表它是負整數。先看首位是0的正整數,補齊位數以後,得到n×2m的計算結果。其中,上标m表示二進制數字的位數,n表示二進制的某個位數。對于二進制數中的各位分别計算n×2m,然後将計算結果相加得到值的就為十進制數。比如将二進制數1010轉換為十進制數的過程如下。

二進制 1 0 1 0

補齊位數 0 0 0 0 1 0 1 0

計算n×2m 0×27  0×26  0×25 0×24 1×23 0×22 1×21 0×20

計算結果 0 0 0 0 8 0 2 0

各位求和結果 10

所以将二進制數1010轉換為十進制數的結果是10。

如果要轉換的二進制數補足位數後首位為1,那麼表示這個二進制數是負整數。此時,就需要先取反,然後再進行換算:例如二進制數11101011的首位為1,這時應先取反得到00010100,然後按照上面的計算過程得出10100對應的十進制數20,所以二進制數11101011對應的十進制數為−20。

1.1.4 編碼格式

1.ASCII碼

ASCII(American Standard Code for Information Interchange,美國信息交換标準代碼),是基于拉丁字母的一套計算機編碼系統,主要用于表示現代英語和其他西歐語言。ASCII碼是現今最通用的單字節編碼系統,并等同于國際标準ISO/IEC 646。

一個英文字母(不分大小寫)占1字節空間,一個中文漢字占2字節空間。一個二進制數字序列在計算機中為一個數字單元,一般為8位二進制數。它的最小值為0,最大值為255。例如,一個ASCII碼就是1字節。

2.Unicode編碼

Unicode(又稱為統一碼、萬國碼、單一碼)是計算機科學領域裡的一項業界标準,包括字符集、編碼方案等。Unicode編碼是為了解決傳統字符編碼方案的局限性而産生的,它為每種語言中的每個字符都設定了統一并且唯一的二進制編碼,以滿足跨語言和跨平台進行文本轉換、處理的要求。

最初Unicode編碼的長度是固定的16位,也就是2字節代表一個字符,這樣可以表示65536個字符。顯然,若要表示各種語言中的所有字符,這是遠遠不夠的。Unicode 4.0規範考慮到了這種情況,定義了一組附加字符編碼。附加字符編碼采用兩個16位來表示,這樣最多可以定義1 048 576個附加字符。目前,Unicode 4.0規範隻定義了45 960個附加字符。

Unicode隻是一個編碼規範。目前實際實現的Unicode編碼隻要有3種:UTF-8、UCS-2和UTF-16。3種Unicode字符集之間可以按照相關規範進行轉換。

3.UTF-8編碼

UTF-8(8-bit Unicode Transformation Format)是一種針對Unicode的可變長度的字符編碼,又稱為萬國碼。UTF-8由Ken Thompson于1992年創建,現在已經将它标準化為RFC 3629。UTF-8用1~6字節編碼Unicode字符。在網頁上它可以統一頁面顯示中文簡體/繁體及其他語言(如英文、日文、韓文)。一個UTF-8編碼的英文字符占用1字節;一個UTF-8編碼的中文(含繁體)字符少數情況下占用3字節,多數情況下占用4字節;一個UTF-8編碼的數字占用1字節。

c語言入門自學應該怎麼做(程序員入門C語言)1

邊看書邊聽視頻,迅速掌握C編程技術的指南

本書賣點

本書内容和服務有優勢:

1,提供100個提高程序性能的技巧。

2,增加課後練習模塊

3,繼續發揮一本書包含三本書内容的優勢,用從入門到精通的寫法進行。

4,按照C11新版本寫作,案例和内容删除過時的技術,讓讀者真正和現實項目結合起來。

5,贈送市面中符合讀者需求的學習資料。

6,全視頻講解

7,開設輔導讀者的視頻課。

内容提要

本書循序漸進、由淺入深地講解了C語言開發的技術。全書共25章。本書不僅介紹了C語言的基礎和核心知識(如開發工具、語法、運算符、表達式、輸入/輸出、流程控制、數組、字符串、函數),還講解了C語言中的重點和難點(如指針、結構體、共用體和枚舉、鍊表、位運算、預編譯、文件操作、調試、内存管理、高級編程技術、算法、數據結構、網絡編程技術等)。此外,本書還通過4個綜合實例,介紹了C語言在綜合項目中的應用。全書内容以“技術解惑”和“範例演練”貫穿全書,引領讀者全面掌握C語言。

本書不但适用C語言的初學者,也适合有一定C語言基礎的讀者學習,還可以作為大專院校相關專業的師生用書和培訓學校的教材。

歡迎加入程序員讀書會,每日與你分享好書和文章

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved