初步對C語言的了解

2021-06-16 18:15:33 字數 2577 閱讀 6192

一、特點

c語言是一種結構化語言。它層次清晰,便於按模組化方式組織程式,易於除錯和維護。c語言的表現能力和處理能力極強。它不僅具有豐富的運算子和資料型別,便於實現各類複雜的資料結構。它還可以直接訪問記憶體的實體地址,進行位(bit)一級的操作。由於c語言實現了對硬體的程式設計操作,因此c語言集高階語言和低階語言的功能於一體。既可用於系統軟體的開發,也適合於應用軟體的開發。此外,c語言還具有效率高,可移植性強等特點。因此廣泛地移植到了各類各型計算機上,從而形成了多種版本的c語言。

第二、歷史

c語言是在70年代初問世的。一九七八年由美國**電報公司(at&t)貝爾實驗室正式發表了c語言。同時由b.w.kernighan和d.m.ritchit合著了著名的「the c programming language」一書。通常簡稱為《k&r》,也有人稱之為《k&r》標準。但是,在《k&r》中並沒有定義乙個完整的標準c語言,後來由美國國家標準學會在此基礎上制定了乙個c 語言標準,於一九八三年發表。通常稱之為ansi c。

第三、細節內部知識框架

c語言規定對scanf和printf這兩個函式可以省去對其標頭檔案的包含命令。

main是主函式的函式名,表示這是乙個主函式。每乙個c源程式都必須有,且只能有乙個主函式(main函式)。函式呼叫語句,printf函式的功能是把要輸出的內容送到顯示器去顯示。printf函式是乙個由系統定義的標準函式,可在程式中直接呼叫。  程式的功能是從鍵盤輸入乙個數x,求x的正弦值,然後輸出結果。

書寫程式時應遵循的規則

2.用{} 括起來的部分,通常表示了程式的某一層次結構。{}一般與該結構語句的第乙個字母對齊,並單獨佔一行。

3.低一層次的語句或說明可比高一層次的語句或說明縮排若干格後書寫。以便看起來更加清晰,增加程式的可讀性。在程式設計時應力求遵循這些規則,以養成良好的程式設計風格。

c語言的字符集

字元是組成語言的最基本的元素。c語言字符集由字母,數字,空格,標點和特殊字元組成。在字元常量,字串常量和注釋中還可以使用漢字或其它可表示的圖形符號。

1.字母  小寫字母a~z共26個,大寫字母a~z共26個

2.數字  0~9共10個

3.空白符 空格符、製表符、換行符等統稱為空白符。空白符只在字元常量和字串常量中起作用。在其它地方出現時,只起間隔作用, 編譯程式對它們忽略。因此在程式中使用空白符與否,對程式的編譯不發生影響,但在程式中適當的地方使用空白符將增加程式的清晰性和可讀性。

4.標點和特殊字元

c語言詞彙

在c語言中使用的詞彙分為六類:識別符號,關鍵字,運算子,分隔符,常量,注釋符等。

1.識別符號

在程式中使用的變數名、函式名、標號等統稱為識別符號。除庫函式的函式名由系統定義外,其餘都由使用者自定義。c 規定,識別符號只能是字母(a~z,a~z)、數字(0~9)、下劃線()組成的字串,並且其第乙個字元必須是字母或下劃線。

以下識別符號是合法的:

a,x,_3x,book_1,sum5

以下識別符號是非法的:

3s 以數字開頭

s*t 出現非法字元*

-3x 以減號開頭

bowy-1 出現非法字元-(減號)

在使用識別符號時還必須注意以下幾點:

(1)標準c不限制識別符號的長度,但它受各種版本的c 語言編譯系統限制,同時也受到具體機器的限制。例如在某版本c 中規定識別符號前八位有效,當兩個識別符號前八位相同時,則被認為是同乙個識別符號。

(2)在識別符號中,大小寫是有區別的。例如book和book 是兩個不同的識別符號。

(3)識別符號雖然可由程式設計師隨意定義,但識別符號是用於標識某個量的符號。因此,命名應盡量有相應的意義,以便閱讀理解,作到「顧名思義」。

2.關鍵字

關鍵字是由c語言規定的具有特定意義的字串,通常也稱為保留字。使用者定義的識別符號不應與關鍵字相同。c語言的關鍵字分為以下幾類:

(1)型別說明符

用於定義、說明變數、函式或其它資料結構的型別。如前面例題中用到的int,double等

(2)語句定義符

用於表示乙個語句的功能。如例1.3中用到的if else就是條件語句的語句定義符。

(3)預處理命令字

用於表示乙個預處理命令。如前面各例中用到的include。

3.運算子

c語言中含有相當豐富的運算子。運算子與變數,函式一起組成表示式,表示各種運算功能。運算子由乙個或多個字元組成。

4.分隔符

在c語言中採用的分隔符有逗號和空格兩種。逗號主要用在型別說明和函式引數表中,分隔各個變數。空格多用於語句各單詞之間,作間隔符。在關鍵字,識別符號之間必須要有乙個以上的空格符作間隔, 否則將會出現語法錯誤,例如把int a;寫成 inta;c編譯器會把inta當成乙個識別符號處理,其結果必然出錯。

5.常量

c 語言中使用的常量可分為數字常量、字元常量、字串常量、符號常量、轉義字元等多種。在第二章中將專門給予介紹。

6.注釋符

c 語言的注釋符是以「/*」開頭並以「*/」結尾的串。在「/*」和「*/」之間的即為注釋。程式編譯時,不對注釋作任何處理。注釋可出現在程式中的任何位置。注釋用來向使用者提示或解釋程式的意義。在除錯程式中對暫不使用的語句也可用注釋符括起來,使翻譯跳過不作處理,待除錯結束後再去掉注釋符。  

對QNX的初步了解

開始學習的常規方法,先在網上搜尋一下,發現qnx中文資料真的不多,仔細看有2004年的,有2008年的,似乎關注qnx的人並不多。不過要了解基本資訊還是足夠了,關於 什麼是qnx 什麼是rtos 實時作業系統 什麼是posix 可移植作業系統介面 都有一些基本介紹。說實在話,qnx的歷史什麼的比較容...

對QNX的初步了解

開始學習的常規方法,先在網上搜尋一下,發現qnx中文資料真的不多,仔細看有2004年的,有2008年的,似乎關注qnx的人並不多。不過要了解基本資訊還是足夠了,關於 什麼是qnx 什麼是rtos 實時作業系統 什麼是posix 可移植作業系統介面 都有一些基本介紹。說實在話,qnx的歷史什麼的比較容...

對委託的初步了解

委託 delegate 簡單來說,就是我們生活中乙個人委託另外乙個人去執行某件事,給出相應的指令,讓他去做這件事情。例項化委託 宣告 把要用的方法放到委託列表中,可以放多個方法 也可 要注意是否給出了引數,宣告的引數個數 型別要與返回值的一致。委託和類一樣,是資料型別,相當於c 的函式指標,可以把它...