位元詩人 [C 語言] 應用程式設計教學

在本系列文章中,我們假定讀者已經學完 C 語言的語法,準備要用 C 寫程式。此系列包括以下內容:

  • 建立 C 專案
  • 處理 C 程式相依性
  • 處理跨平台議題
  • 優化 C 程式
  • 撰寫物件 C 程式
  • 撰寫函數 C 程式
  • 撰寫泛型 C 程式
  • 錯誤處理
  • 撰寫測試程式

由於這些內容不是語法的一部分,沒有標準答案,只能算是目前可行的方式。讀者除了閱讀這些文章,最好再閱讀其他資料,並實際動手寫 C 程式,才能達到最佳的學習效果。

如果讀者想要複習 C 語法,可以觀看筆者先前寫的文章

[C 語言] 程式設計教學:如何建立 C 專案 (Project)

平常練習 C 語言時,我們可能只用單一或少數 C 原始碼檔案,只用簡單的指令或 IDE 按鈕來編譯 C 原始碼。但我們若想用 C 寫應用程式或函式庫,應該要以專案的形式管理 C 原始碼。本文介紹建立 C 專案的方式。 繼續閱讀

[C 語言] 程式設計教學:使用自動化編譯系統 (Build Automation System)

對於有一定規模的 C 專案,不會把所有的程式碼寫在同一個檔案中,而會將程式碼以模組化的方式細分在不同檔案中,並用自動編譯軟體來管理編譯、測試、安裝等工作流程。本文介紹在 C 語言中常見的自動編譯系統。 繼續閱讀

[C 語言] 程式設計教學:基於 CMake 的 C 應用程式專案

在本文中,我們藉由以 CMake 為基礎的 Hello World 程式專案來展示 CMake 的使用方法。由於 C 程式的部分相當簡單,本文的重點會放在 CMake 的使用方式以及設定檔撰寫上面。 繼續閱讀

[C 語言] 程式設計教學:基於 CMake 的 C 函式庫專案

CMake 除了可以用來建立應用程式專案,也可用來建立函式庫專案。藉由 CMake 跨平台的特性,讓函式庫更容易分享出去。 繼續閱讀

[C 語言] 程式設計教學:處理 C 專案相依性 (Dependency)

當我們要寫應用程式時,很少會只用標準函式庫的功能。這時候,我們需要第三方函式庫來補足標準函式庫不足之處。對於小型任務,還勉勉強強可以自製輪子,但對於 GUI 函式庫或其他大型函式庫,就超出單一開發者的能力了。所以還是要會處理 C 專案的相依性。 繼續閱讀

[C 語言] 程式設計教學:撰寫跨平台 C 程式

在許多 C 語言教材中,會提到 C 語言是跨平台語言。然而,基礎教材只會碰觸到語法和標準函式庫的層面,這些層面已經是跨平台的。在越過語法和標準函式庫後,C 語言的跨平台並不是隨手可得的,而要經過一些額外的努力。 繼續閱讀

[C 語言] 程式設計教學:撰寫跨平台 C 函式庫

雖然 C 是跨平台語言,但卻不像 Java 等語言可立即取得跨平台的特性,而要經過一些努力。這是因為不同系統的系統 C API 不會完全相同。本文會介紹一些和撰寫跨平台 C 函式庫相關的議題,供想要撰寫跨平台 C 程式碼的讀者參考。 繼續閱讀

[C 語言] 程式設計教學:撰寫跨平台 C 專案

在先前的文章中,我們以概念為主,介紹撰寫跨平台 C 程式相關的議題。在本文中,我們延續這個議題,但會著重實際的工具使用。讀者可以將本文和先前的文章對照著看,對於撰寫跨平台 C 程式會更了解。 繼續閱讀

[C 語言] 應用程式設計教學:優化 C 程式碼

所謂的優化,就是用各種手法讓程式運行更快速。這是在程式運行正確後,進一步改善程式的方式。在本文中,我們從 C 的觀點在看如何優化程式碼。 繼續閱讀

[C 語言] 程式設計教學:物件導向程式入門

雖然 C 語言沒有直接支援物件導向程式的語法,但我們可以在一些真實世界的專案看到具有物件導向思維的 C 程式碼。本文介紹以 C 語言撰寫具有物件導向思維的程式碼。 繼續閱讀