999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Linux操作系統的C語言編譯和調試方法解析

2020-03-02 11:38:01蔡雅慧
科學與財富 2020年1期

摘 要:文章先介紹了GCC編譯器相關內容,包括GCC編譯程序和GCC編譯選項,隨后介紹了GDB調試程序相關內容,包括GDB具體操作和GDB基礎命令,最后介紹了C語言編寫中的注意事項,希望能給相關人士提供有效參考。

關鍵詞:Linux操作系統;C語言編譯;調試方法

引言:C語言擁有較強的表達能力、應用范圍較廣、功能豐富,同時目標程序的運行效率相對較高,擁有良好的可移植性,不但擁有高級語言應用優勢,同時還兼具低語言特征。為此C語言也是當下推廣速度最快的計算機語言。

一、GCC編譯器

(一)GCC編譯程序

Linux OS系統中應用的C編譯器主要是GCC編譯器,如果初步了解其他控制系統中的某種C編譯器,則便會快速掌握GCC操作。結合相關編輯軟件編制完成某一C語言源程序后,會直接進入下面幾項環節,分別是程序運行、連接、開展編譯工作、程序輸入等。比如在設計C源程序的filel.c時,通過編譯后可以或得filel.o的目標文件,并和系統中的庫函數實施有效連接,最終獲得filel.out可執行文件,并開始啟動filel.out文件運行。

GCC編譯器執行命令的具體用法如下所示:

GCC[選項][文件名]

GCC編譯程序中如果不存在任何選項的條件下,便會自動生成一種a.out可執行文件,比如以下命令會在現有目錄下生成一種稱作a.out的文件,相關文件名為gcc filel.c。

如果想要改變系統默認文件名a.out,在開展編譯工作中相關技術人員可以自主指定相應的可執行文件名,從而對系統自動生成的a.out文件實施有效替換,比如可以把filel.c名字的C程序改編為filel.out名字的可執行文件,并按照下方命令參考輸入:gcc-o filel.out filel.c。操作中需要注意應用-0選項過程中,后面應該緊跟一種文件名[1]。

(二)GCC編譯選項

GCC編譯選項多種多樣,其中僅有少部分會頻繁選用,除了相關選項之外,還包含各種不會經常應用的選項,為此可以輸入man gcc,并查閱其應用方法。除此之外,部分GCC選項內還包含超出一個的字符,為此應該針對各個選項指定相應的連字符-,盡量不要在同一連字符后面陸續跟多個選項。比如-p、-g、-pg三種選項最終的執行結完全不同,前者主要是剖析建立信息,隨后將相應的調試信息添加到可執行文件內,而后者是單純構建剖析信息。

二、GDB調試程序

(一)GDB具體操作

Linux操作系統中設置有GDB調試器,該種裝置主要作用是調試C語言的程序工具,其中CDB提供的具體功能包括程序中可監視的變量值,可以合理設置斷點,從而方便在指定代碼的基礎上,讓程序停止運行,并按照順序一行行落實具體程序。為了保證GDB的正常運行,需要在進行編譯的過程中,讓程序含有調試信息。調試信息中囊括了程序內各種變量類型,同時還含有可執行文件內的地址映射,和機器碼互相關聯。

假如啟動GDB調試器并運行,則需要于命令行中輸入GDB,隨后按下回車鍵,便可以順利啟動運行GDB,在啟動GDB后,顯示屏幕中還會展示出相應的提示信息,最后一行主要是GDB提示符號:(gdb)。

(二)GDB基礎命令

GDB能夠為多種命令實現具體功能提供可靠支持。相關命令從原本的簡單文件內轉入允許檢查調用堆棧內容當中,下面介紹在GDB實施程序調試過程中經常會應用到的幾種命令:命令file主要功能是將即將調試對象可執行文件裝入;kill命令的功能是將調試中的程序終止;list命令功能為將執行文件中部分源代碼列出;next命令主要功能是執行某行源代碼,但不會進入到函數內部;step命令的功能是按照某行源代碼執行,但不會進入函數內;run命令功能是按照當下被調試程序執行;quit命令的功能是從GDB中徹底退出;watch命令的具體功能是針對某一變量進行全面監控,不論其什么時候會被改變;break命令的主要功能是設計斷點,保證當程序在運行到一定條件下可以被掛起;make命令功能是只要不從GDB內退出,便可以重新生成執行文件。通過將GDB-H輸入到命令行中,便可以獲得相關命令選項的列表說明[2]。

三、C語言編寫注意事項

Linux操作系統內編寫C語言的過程中,需要注意下面幾種問題:

第一是和其他系統內進行C語言編寫程序相同,包括編輯、編譯、調試、運行等步驟,調試方法也大致相同,比如夠能夠設計斷點,單步執行調試程序。第二是在DOS以及WINDOWS相關操作系統中,主要是應用TUBRO C,但其屬于一種女匯集運行、調試、編輯多種功能的編程環境,但在Linux操作系統操作系統中,應該如同記DOS命令,把所有命令選項、應用方法和參數全部記住。第三是C語言在各個操作系統里面都是.C的擴展名,但執行文件以及目標文件相關擴展名則大不相同,比如Windows以及DOS相關系統中的目標文件全部是.obj,而相關執行文件則是.exe。但在Linux操作系統以及UNIX系統內,目標文件擴展名是,o,而執行文件的擴展名則是.out,其中需要著重注意,不然便會導致系統無法準確找出相關文件,最終出現錯誤。

綜上所述,Linux操作系統是全世界范圍內最為知名的自由免費軟件,其自身便屬于一種可以和Windows相媲美的系統,并在互聯網中發布出來,大部分人會將其下載下來并結合自身需求不斷完善其相關功能,將Linux打造成一種擁有廣泛發展前景、較為穩定的操作系統,該系統內還包含多種C語言開發工具。

參考文獻:

[1]楊炎熙.關于嵌入式Linux操作系統的開發及應用的研究[J].數字通信世界,2019(11):156.

[2]菅華.深度挖掘配置核查與口令自動化加固工具在實際工作中的應用[J].信息通信,2019(09):100-103.

作者簡介:

蔡雅慧(1996-),女,籍貫:海南;職稱和學歷:本科;研究方向或專業:計算機科學與技術專業。

主站蜘蛛池模板: 四虎亚洲国产成人久久精品| 午夜国产理论| 日韩欧美在线观看| 国产精品一区不卡| 99这里只有精品6| 亚洲中文字幕在线精品一区| 日韩美毛片| 国产亚洲精品yxsp| 精品乱码久久久久久久| 九九热精品视频在线| 欧美成人免费一区在线播放| 凹凸精品免费精品视频| 亚洲一级毛片在线播放| 国产精品三级专区| 91精品久久久无码中文字幕vr| 波多野结衣一区二区三视频| 麻豆a级片| 日韩精品欧美国产在线| 97在线视频免费观看| 国产99精品久久| 在线视频亚洲欧美| 91精选国产大片| 亚洲手机在线| 亚洲综合色在线| 国产99精品久久| 在线观看亚洲人成网站| 欧美一级99在线观看国产| 污网站在线观看视频| 国产一级二级在线观看| 国产毛片网站| 亚洲嫩模喷白浆| 福利一区三区| 91一级片| 国产精品无码一二三视频| 女同国产精品一区二区| 久久这里只有精品8| 国产成人午夜福利免费无码r| 国产成人免费高清AⅤ| 国产成人综合日韩精品无码首页| 国产综合精品一区二区| 久久香蕉国产线看观看式| 中文字幕佐山爱一区二区免费| 在线观看91香蕉国产免费| 亚洲第一视频网| 国产区精品高清在线观看| 国产成人一二三| 国产91在线免费视频| 99久久精品久久久久久婷婷| 日本黄色不卡视频| 久久99热这里只有精品免费看| 巨熟乳波霸若妻中文观看免费| 成人国产免费| 欧美国产菊爆免费观看| 亚洲九九视频| 欧美激情第一欧美在线| 日韩a在线观看免费观看| 色天堂无毒不卡| 国产人妖视频一区在线观看| 中国毛片网| 久久精品娱乐亚洲领先| 国产91精品调教在线播放| 久久亚洲AⅤ无码精品午夜麻豆| 欧美一级黄色影院| 亚洲综合18p| 日本免费一区视频| 亚洲最大福利视频网| 国产一级二级三级毛片| 视频国产精品丝袜第一页| 午夜三级在线| 67194亚洲无码| 多人乱p欧美在线观看| 日韩麻豆小视频| 无码综合天天久久综合网| 亚洲欧美另类专区| 欧洲熟妇精品视频| 91色老久久精品偷偷蜜臀| 久久五月天综合| 久久久久人妻一区精品| 免费中文字幕一级毛片| 五月婷婷激情四射| 国产免费怡红院视频| 国产成年无码AⅤ片在线|