Linux下C編程基礎之:本章小結與思考與練習

2021-01-08 電子產品世界

3.8 本章小結

本章是Linux中進行C語言編程的基礎,首先講解了C語言編程的關鍵點,這裡關鍵要了解編輯器、編譯連結器、調試器及項目管理工具等概念。

本文引用地址:http://www.eepw.com.cn/article/257140.htm

接下來,本章介紹了兩個Linux中常見的編輯器——vi和emacs,並且主要按照它們的使用流程進行講解。

再接下來,本章介紹了gcc編譯器的使用、函數庫的創建與使用以及gdb調試器的使用,並結合具體的實例進行講解。雖然它們的選項比較多,但是常用的並不多,讀者著重掌握筆者例子中使用的一些選項即可。

之後,本章又介紹了make工程管理器的使用,這裡包括makefile的基本結構、makefile的變量定義及其規則和make的使用。

最後介紹的是autotools的使用,這是非常有用的工具,希望讀者能夠掌握。

本章的實驗安排比較多,包括了vi、gdb、makefile和autotool的使用,由於這些都是Linux中的常用軟體,因此希望讀者切實掌握。

3.9 思考與練習

在Linux下綜合使用vi、gcc編譯器和gdb調試器開發漢諾塔遊戲程序。

漢諾塔遊戲介紹如下。

約19世紀末,在歐洲的商店中出售一種智力玩具,在一塊銅板上有三根杆,如圖3.10所示。其中,最左邊的杆上自上而下、由小到大順序串著由64個圓盤構成的塔。目的是將最左邊杆上的盤全部移到右邊的杆上,條件是一次只能移動一個盤,且不允許大盤放在小盤的上面。

圖3.10漢諾塔遊戲示意圖

linux作業系統文章專題:linux作業系統詳解(linux不再難懂)

linux相關文章:linux教程


相關焦點

  • Linux基礎命令之:實驗內容及小結
    本文引用地址:http://www.eepw.com.cn/article/257155.htm2.4實驗內容2.4.1在Linux下解壓常見軟體在Linux下安裝一個完整的軟體(嵌入式Linux的必備工具——交叉編譯工具),掌握Linux常見命令
  • 編寫一個簡單的遊戲來練習用 C+編程|Linux 中國
    本文字數:3473,閱讀時長大約:4分鐘 https://linux.cn/article-12985-1.html 作者:Seth Kenlon 譯者:Xingyu.Wang C++ 語言很複雜,但它可以教會你很多關於數據類型
  • Linux下內存洩漏工具
    嵌入式linux QQ交流群:175159209,歡迎愛好者加入交流技術問題!
  • Linux多線程編程和Linux 2.6下的NPTL
    這幾天由於工作需要,琢磨了一下Linux下的多線程的相關資料。Linux下最常用的多線程支持庫為 Pthread庫,它是glibc庫的組成部分。但是關於Pthread的說明文檔非常缺乏,特別是對POSIX多線程規範的介紹以及pthread庫中多線程實現方式的介紹實在是少之又少。而多線程編程對於系統程式設計師而言是必須掌握的技術,因此總是讓學習中的程式設計師覺得頭痛不以。
  • Linux-Centos下之RabbitMQ快速安裝
    所有主要的程式語言均有與代理接口通訊的客戶端庫。下載Erlang和RabbitMQ安裝包:rlang-21.1-1.el7.centos.x86_64.rpm和rpm -ivh rabbitmq-server-3.7.8-1.el7.noarch.rpm。
  • 17 個 Linux 下用於 C/C++ 的最好的 IDE
    ,它能夠提供現代化的、通用的編程功能,可以用於開發包括視頻遊戲、搜尋引擎、其他計算機軟體乃至作業系統等在內的各種大型應用。在這篇文章裡,我們會向你展示一些可以在 Linux 平臺上找到的用於 C++ 或者其他程式語言編程的最好的 IDE。 1.
  • C語言之父和Linux之父誰更偉大?
    後來在寫出第一個版本的Unix時,覺得Unix上需要一個新的系統程式語言,他創造了一個B語言。B語言是沒有類型的C,準確說B語言是Tompson把BCPL擠進8K內存,被其個人大腦過濾後的產生的語言。 由於B語言存在的一些問題,導致其只是被用來寫一些命令工具使用。恰好在這個時期,Ritchie在B語言的基礎上,進行了重新的設計改良,從而誕生了C語言。
  • Unity遊戲開發:C Sharp進階之面向對象編程
    C進階之面向對象編程深入淺出的C#進階課程在了解C#基礎語法之上,進一步學習面向對象(OOP)編程技術和.NET框架,並深入講解在實踐中總結出的OOP設計理念。預估學習&練習時間:20小時難易度:進階OOP基礎面向對象編程簡介命名空間類的成員及可訪問性欄位和常量屬性和索引器方法和擴展方法運算符重載構造函數和終結器匿名類型和動態類型預處理指令繼承和多態繼承和多態的概念繼承virtual和override抽象類和密封類接口以及實現資源釋放和Idisposable部分類和嵌套類OOP設計理念
  • 在計算機軟體領域 C語言之父和Linux之父誰更偉大
    後來在寫出第一個版本的Unix時,覺得Unix上需要一個新的系統程式語言,他創造了一個B語言。B語言是沒有類型的C,準確說B語言是Tompson把BCPL擠進8K內存,被其個人大腦過濾後的產生的語言。 由於B語言存在的一些問題,導致其只是被用來寫一些命令工具使用。恰好在這個時期,Ritchie在B語言的基礎上,進行了重新的設計改良,從而誕生了C語言。
  • linux下安裝虛擬機,完美在linux系統下運行通達信軟體
    現在越來越多的人使用linux系統,現在很多的國產作業系統都是基於linux內核上的。雖說不少的軟體都可以運行在linux的系統上。但是對於股票軟體來說在linux上的使用是一個硬傷。能夠運行在linux下的國內股票軟體少之又少。
  • 嵌入式Linux的GDB調試環境建立
    假定在debug下編譯gdb套件,你前面已經設定了TARGET,PREFIX參數。其中TARGET是你的目標板,我的是arm-linux,PREFIX是你要安裝的目標文件夾。$tar xvzf gdb-5.2.1.tar.gz $mkdir debug/build-gdb $cd build-gdb $..
  • 「正點原子Linux連載」第四十二章新字符設備驅動實驗
    比如使用modprobe命令成功加載驅動模塊以後就自動在/dev目錄下創建對應的設備節點文件,使用rmmod命令卸載驅動模塊以後就刪除掉/dev目錄下的設備節點文件。工程創建好以後新建newchrled.c文件,在newchrled.c裡面輸入如下內容:示例代碼42.5.1.1 newchrled.c文件1 #include <linux/types.
  • 奇怪的C語言代碼,在變量前加上(void)是什麼操作?有什麼用?
    C語言的語法極其簡潔,即使是初次接觸程式語言的初學者也能很快學完它的語法。不過,C語言也是一門「靈活得過了頭」的程式語言,對於很多初學者來說,編寫C語言程序就好像拿著一堆最基本的磚塊,要修建一座大廈一樣,茫然找不到方向。
  • 先別急著給孩子報編程課,了解下編程思維是什麼
    隨著人工智慧的發展,我們的生活、工作都越來越依賴於各種程序、系統,未來還會出現很多的基於科技的新工作,學習編程思維,能幫助孩子建立起面對未來的能力,即使不做具體的編程工作,編程思維也能夠幫助我們在工作和生活中拆解問題,產生全新的創意。有趣的手指遊戲,直觀理解二進位原理 計算機是建立在二進位基礎上的,二進位作為一種數字語言,只用到兩個數字:0和1。
  • 從串口驅動到Linux驅動模型,想轉Linux的必會!
    完全兼容POSIX1.0標準這使得可以在Linux下通過相應的模擬器運行常見的DOS、Windows的程序。這為用戶從Windows轉到Linux奠定了基礎。許多用戶在考慮使用Linux時,就想到以前在Windows下常見的程序是否能正常運行,這一點就消除了他們的疑慮。
  • 一張圖看懂Linux內核中Percpu變量的實現
    我們在使用各種程式語言進行多線程編程時,經常會用到thread local變量。所以不管是c/c++/rust,還是java/c#等,都內置了對thread local變量的支持。但你知道嗎,不僅是在程式語言中,在linux內核中,也有一個類似的機制,用來實現類似的目的,它叫做percpu變量。
  • 八年級生物教學教案:動物行為的特點和生理基礎
    ④回憶自己曾知道哪些關於動物行為產生的生理基礎的知識,這些知識來自哪裡(課外書、科普報刊、電視節目、科普電影、計算機網絡等),與本書上所介紹有關知識有何異同,記下自己的問題。   ⑤思考「動動腦」提出的兩個問題。
  • Linux下scp命令使用教程
    scp是secure copy的簡寫,用於在Linux下進行遠程拷貝文件的命令,scp傳輸是加密的,可能會稍微影響一下速度其佔用的系統資源非常小。非常適合遠程文件的拷貝。本篇我們就詳細介紹下scp的用法。
  • 娛樂工作兩不誤 在Linux下如何安裝QQ?
    1如何在linux版本中安裝QQ    對於大多數網友來說,開源Linux發行版未能成為市場主流應用,其很大一部分原因是支持軟體相對較少,娛樂功能有限,導致很多用戶放棄了嘗試Linux的念頭。而對於中國的網友來說,QQ可能是每個人必備的交流工具之一,在Linux版本下安裝QQ可能存在困擾,致使一部分網友由於不能通過QQ很好的交流而最終放棄了應用Linux平臺。下面我們給大家介紹三種在Linux版本中運行QQ的方法,以便大家與朋友未來使用Linux時能夠更好交流!
  • 嵌入式Linux設備驅動開發之:實驗內容——test驅動
    這個簡單的驅動程序的原始碼如下所示:/*test_drv.c*/#includelinux/module.h>#includelinux/init.h>#includelinux/fs.h>#includelinux/kernel.h>#includelinux/slab.h