第一章 C語言程式設計(Ivor Horton)

Carb_5683發表於2016-10-26

1.1 C語言

  • C語言是一種程式導向的語言
    Objective C (OC) 是一種物件導向的語言

1.2 標準庫

  • 標準庫在一系列的標準檔案——標頭檔案中指定。
    標頭檔案的副檔名是 .h

1.3 學習C

  • 建議讀者自己輸入本書的所有示例

1.4 建立C程式

  • C程式的建立過程有4個步驟:編輯、編譯、連結、執行

1.4.1 編輯

編譯器
編輯器

  • 編輯過程就是建立和修改C程式的原始碼——我們編寫的指令就是原始碼
  • IDE整合開發環境(Integrated Development Environment )

1.4.2 編譯

  • 原始檔
    編譯器可以將原始碼轉換為機器語言,在編譯階段的輸入是在編輯期間產生的檔案,常稱為原始檔

  • 編譯器的輸出結構稱為物件程式碼(object code),
    存放物件檔案的稱為物件檔案(object file)

1.4.3 連結

  • 連結器(Linker )將原始碼檔案中由編譯器產生的各種物件模組組合起來,再從C語言提供的程式庫中新增必要的程式碼模組,將它們組合成一個可執行的檔案。

在Microsoft Windows 環境下,這個可執行檔案的副檔名為.exe

1.4.4 執行

  • 執行就是完成了編輯、編譯、連結以後,執行程式。
    原始檔.c–> 物件檔案.obj –> 可執行檔案 .exe

1.5 建立第一個程式

#include <stdio.h>

int main(void)
{
    printf(" Hello World! ");
    return  0;
}
編譯和連結在一個操作中完成,通常稱為“構建操作”

轉義序列(escape sequence )

1.6 編輯第一個程式

#include <stdio.h>

int main()
{
    printf("\"If at first you don't succeed,try,try,try again!\" ");
    return 0;
}

1.7 處理錯誤

編譯器能精確指出錯誤及出處
剛開始編寫程式的時候很容易出現錯誤,很多錯誤都是拼寫錯誤造成的。很容易忘記語句後面的分號。
小錯誤卻造成大的問題

1.8 剖析一個簡單的程式

1.8.1 註釋

位於/* 和*/之間的任意文字都是註釋
如果忘記包含對應的*/,編譯器就會忽略/*後面的所有內容,
/**********************************************************  *
  *                                                                                        *
  *                                                                                        *
***********************************************************  *
  • 程式碼行上兩個斜槓後面的所有內容都會被編譯器忽略
    //

註釋可以放在程式中的任意位置,說明程式碼的一般作用,制定程式碼是如何工作的
新增足夠的註釋,為確保日後自己能理解程式的作用和工作方式。

1.8.2 預處理指令

1.8.3 定義main() 函式

下面的5行指令定義了main()函式

int main (void)
{
    printf("Beware the Ides of March!");
    return 0;
}

定義main()函式的第一行程式碼如下:


int main(void) // This identifies the funcation main()

1.8.4 關鍵字

1.8.5 函式體

函式體是在函式名稱後面位於起始及結束兩個大括號之間的程式碼塊

1.8.6 輸出資訊

printf() 是一個標準的庫函式, 它將函式名後面引號內的資訊輸出到命令列上
雙引號內的字串稱為字串字面量

1.8.7 引數

包含在函式名後的圓括號內的項稱為引數

1.8.8 控制符

反斜槓在文字字串裡有特殊的特殊的意義,它表示轉義序列的開始。

轉義序列
\n 換行
\r Enter鍵
\b 退後一格
\f 換頁
\t 水平製表符
\v 垂直製表符
\a 發出鳴響
\? 插入問號?
\” 插入雙引號”
\’ 插入單引號’
\ 插入反斜槓

1.11 函式及模組化程式設計

C程式的結構在本質上就是函式的結構

  • 簡化整個程式運轉的過程
  • 易處理與理解
  • C語言中豐富的函式庫大大增強了C語言的能力。
    *也可以編寫自己的函式庫,
    經常編寫某個函式就可以編寫它的通用版本

1.12 常見的錯誤

容易在for表示式後面的括號中加分號

for(); ////這是嚴重的語法錯誤

do-while迴圈的while表示式後面容易忘記分號;

變數超出作用域,但是編譯器沒有給出警告,就很難找出這個錯誤在那?

總是會把main 函式打錯為: mian,總以為不會犯的錯誤,犯了好多次了。

各個括號之間的乘號不能省去。

度數怎麼實現
乘方的上標如何實現的呢?

當程式很大的時候很難去命名變數名字

1.13 要點

Include指令把外部檔案的內容包含到原始檔
標準標頭檔案,使用printf()函式時要在標頭檔案中包含輸入輸出函式
函式體的開頭
函式體的結束

相關文章