[Linux]git_gdb

一、git

1. git 常用指令

git status? ? ? ? 查看倉庫狀態

git add <文件名>? ? ? ? ? ? ? ? ?? ? 把文件添加到倉庫暫存區

git commit -m "信息"? ? ? ? ? ? ? ? 把文件加入倉庫

git push? ? ? ? ? ? ? ? ? ? ? ? ? ? ??? ? ? 把本地倉庫同步到遠端

git pull? ? ? ? ? ? ? ???????????????? ? ? ? ?把遠端倉庫同步到本地

2.云服務器默認不安裝 C 靜態庫

sudo yum install -y glibc-static

sudo yum install -y libstdc++-static

二、調試器 gdb

gdb 調試需要程序是 debug 形式的

gcc / g++ 默認的發布模式是 release

通過 -g 選項,讓 gcc / g++ 以 debug 模式發布程序:
gcc -o test test.c -g

1.進入 gdb 調試

gdb <程序名>

(gdb) 下,輸入 quit 并回車即可退出,或 ^D 退出

2.查看代碼

(1)指定行? l / list

l 5? ?/? l code.c:5? ?/? list 5? ?/? list code.c:5? ? ? ? 查看 code.c 的第5行上下

通過按回車可以一直往下查看代碼

(2)指定函數

3.執行代碼

用 r / run 直接跑完程序

4.調試代碼

(1)斷點

b 19? ? ? ? ? ? ? ? ??? 在第19行設置斷點

b code.c:main? ? ? ? ? ? ? ? 給 main 函數打斷點

b code.c:19? ? ? ? 給指定文件的第19行打斷點

info b? ? ? ? ? ? ? ? ??查看所有斷點信息

d 1? ? ? ? 刪除編號為1的斷點

在一個調試周期中(gdb 不退出重進),斷點編號是線性遞增的。

如果已有1、2、3號斷點,刪去1、2、3號斷點后再打一個斷點,編號會是4而不是1.

disable 2? ? ? ? 禁用2號斷點????????????????????????enable 2? ? ? ? 啟用2號斷點

disable b? ? ? ? 禁用所有斷點???????????? ? ? ? ? ?enable b? ? ? ? 啟用所有斷點

(2)n (next) 逐過程????????s (step) 逐語句

都是讓代碼執行一行,但是 n 不會進語句中的函數,s 會進語句中的函數

n 逐過程:

s 逐語句:

(3)觀察變量

display <變量>? ? ? ? 常顯示變量? ? ? ? ? ? ? ? undisplay <編號>? ? ? ? 取消顯示

p <變量>? ? ? ? 暫時顯示變量的值

(4)until <行號>

直接跳轉到某一行

(5)c

(continue) 讓代碼從一個斷點執行到下一個斷點

(6)finish

直接運行完當前所在的函數

(7)watch <變量>

監視一個變量,當變量的值改變時,會顯示原先值和新值

(8)set var

set var e=5? ? ? ? 把變量 e 的值修改為 5

(9)條件斷點

新增一個條件斷點:

b <行號/函數名> if <條件>

把一個已有斷點設置為條件斷點:
condition <斷點編號> <條件>

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/89623.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/89623.shtml
英文地址,請注明出處:http://en.pswp.cn/web/89623.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

醫療AI與融合數據庫的整合:挑戰、架構與未來展望(下)

?? 解決方案:引入融合數據庫(Multi-modal Data Fusion DB) 醫院引入一款支持圖、向量、表、流的融合數據庫(如Oracle ADW、Milvus+PostgreSQL、或某國產平臺),完成了以下集成: 數據類型 來源系統 格式/模型 示例內容 基因組數據 NGS平臺 VCF / JSON / 圖 EGFR突變、A…

【深度強化學習】MIP-DQN 實現案例(完整Python代碼)

目錄MIP-DQN 算法概述建模基礎訓練階段&#xff08;Training&#xff09;部署階段&#xff08;Online Execution&#xff09;DNN 網絡轉化為 MIP 表達式性能指標完整 Python 代碼實現主函數&#xff1a;random_generator_battery模型函數&#xff1a;MIP_DQN基礎/專用庫包安裝模…

微信小程序 wx.request() 的封裝

基于微信小程序的wx.request()方法封裝下面是一個封裝方案&#xff0c;滿足您提出的所有要求&#xff1a;class HttpService {constructor() {this.baseUrl ; // 基礎URLthis.pendingRequests new Map(); // 請求緩存池this.interceptors {request: [],response: []};}// 設…

yolo8實時識別目標(和平精英敵人+骨骼關鍵點)

現在需要識別人物的肢體&#xff08;姿態/骨骼關鍵點&#xff09;&#xff0c;即所謂的「姿態估計&#xff08;pose estimation&#xff09;」&#xff0c;以下是一些主流、訓練好可直接使用的開源模型推薦&#xff0c;支持多人識別與骨骼關鍵點檢測&#xff0c;適合你后續用于…

MyBatis動態SQL全解析:五大核心標簽實戰指南

MyBatis動態SQL全解析&#xff1a;五大核心標簽實戰指南 一、動態SQL的價值&#xff1a;告別硬編碼時代 傳統SQL拼接的痛點 // 傳統方式需要手動拼接SQL字符串 StringBuilder sql new StringBuilder("SELECT * FROM orders WHERE 11"); if (status ! null) {sql.app…

線上 CPU 過高怎么排查

通過以下幾個命令解決1、top命令&#xff0c;找到 CPU 過高的pid(進程); ?編輯 2、根據pid(進程)找到CPU過高的線程id;top -H -p pid(進程)3、把線程id轉換16 進制的printf 0x%x\n 線程id4、導致CPU 飆升的線程異常信息&#xff0c;-A 30表示打印 30 行記錄jstack pid(進程id)…

Letter Combination of a Phone Number

IntroduceProblem Analysis (Using “258” as example) //2 a b c //5 j k l //8 t u vPossible letter combinations: a, j, t (no further options, this is one combination)a, j, u (no further options, another combination)a, j, v (another c…

【問題解決】npm包下載速度慢

問題描述&#xff1a; npm包下載速度慢 問題原因&#xff1a; 為什么下載 npm 包速度慢&#xff1f; 在使用npm下包的時候&#xff0c;默認從國外的https://regitry.npmjs.org/服務器進行下載。此時&#xff0c;網絡數據的傳輸需要經過漫長的海底光纜&#xff0c;因此下包速度…

Apache DolphinScheduler介紹與部署

目錄 一、軟件介紹 1、軟件概述 2、發展歷史 3、名詞解釋 4、模塊介紹 軟件部署 1、下載發布包 2、上傳與解壓 3、啟動 4、瀏覽器驗證 一、軟件介紹 1、軟件概述 Apache DolphinScheduler 是一個分布式易擴展的可視化DAG工作流任務調度開源系統。適用于企業級場景&…

Selenium 啟動的瀏覽器自動退出問題分析

當 Selenium 啟動的瀏覽器自動關閉時&#xff0c;通常是由于以下原因導致的&#xff1a;1. 腳本執行完畢原因&#xff1a;Selenium 腳本執行到末尾時&#xff0c;如果沒有保持瀏覽器打開的代碼&#xff08;如time.sleep()或循環&#xff09;&#xff0c;瀏覽器會自動關閉。解決…

rust實現的快捷補全到剪貼板的實用工具

最近在兼職項目中老是遇到這樣的場景&#xff1a; 在云服務器之間通過scp命令傳輸文件&#xff0c;密碼太長記不住(客戶服務器不方便ssh-copy-id)在服務器上使用mysql命令登錄修改數據&#xff0c;數據庫密碼太長記不住&#xff08;客戶設置的密碼&#xff0c;直接改掉哈&#…

信息系統風險的安全技術防范思路

針對信息系統風險的安全技術防范思路 降低風險&#xff0c;即提升了安全能力和水平 保護資產 加強信息系統軟硬件及數據安全保護&#xff1b;減少脆弱性 通過研發、部署、應用各環節來盡量減少或避免脆弱性&#xff1b;應對威脅 采取防御措施&#xff0c;實施攻防對抗。

Java項目:基于SSM框架實現的網盤管理系統【ssm+B/S架構+源碼+數據庫+畢業論文】

摘 要 網絡技術和計算機技術發展至今&#xff0c;已經擁有了深厚的理論基礎&#xff0c;并在現實中進行了充分運用&#xff0c;尤其是基于計算機運行的軟件更是受到各界的關注。加上現在人們已經步入信息時代&#xff0c;所以對于信息的宣傳和管理就很關鍵。因此文件信息的管理…

Echart 地圖放大縮小

文章目錄 常用方法 1. **開啟 `roam` 屬性** 2. **通過鼠標滾輪或手勢縮放** 3. **設置初始縮放比例** 4. **通過按鈕控制縮放** 5. **限制縮放范圍** 6. **監聽縮放和平移事件** 7. **結合 `dataZoom` 實現數據縮放** 總結 相關文章 在 ECharts 中,可以通過設置地圖的 roam …

針對VMware虛擬化環境遷移的復雜場景,我將從技術架構、遷移方案、代碼實現、可視化流程四個維度進行專業解析,并提供完整的解決方案框架。

針對VMware虛擬化環境遷移的復雜場景&#xff0c;我將從技術架構、遷移方案、代碼實現、可視化流程四個維度進行專業解析&#xff0c;并提供完整的解決方案框架。一、技術架構分析&#xff08;架構圖表格對比&#xff09;graph TDA[源環境] -->|vMotion| B[目標環境]A -->…

揭秘 AIGC 背后的技術:GPT、BERT 與 Transformer 模型的工作原理

一、引言AIGC 的崛起與重要性人工智能生成內容&#xff08;AIGC&#xff09;已經不再是未來的技術&#xff0c;它正以驚人的速度滲透到各行各業&#xff0c;重新定義了內容創作、媒體生產、甚至人類認知的邊界。從深度學習到大規模自然語言處理&#xff0c;AIGC 的崛起代表著一…

Compose筆記(三十五)--ModalBottomSheetLayout

這一節主要了解一下Compose中的ModalBottomSheetLayout&#xff0c;在Jetpack Compose開發中&#xff0c;ModalBottomSheetLayout是Material Design組件庫中用于實現模態底部面板的核心組件&#xff0c;其核心作用是通過聲明式API管理底部面板的顯示、隱藏及交互邏輯。API Moda…

AWS Partner: Accreditation (Technical)

AWS Partner: Accreditation &#xff08;Technical&#xff09;AWS 核心技術簡介云計算的優勢AWS 全球基礎設施核心技術&#xff1a;計算 Amazon Elastic Compute Cloud (Amazon EC2)存儲數據庫聯網安全性從服務到解決方案解決方案設計簡介遷移策略架構最佳實踐AWS Well-Archi…

【52】MFC入門到精通——(CComboBox)下拉框選項順序與初始化不一致,默認顯示項也不一致

文章目錄1 問題描述2 問題分析與解決上一講&#xff0c;我們實現了MFC串口助手初級版。 MFC入門到精通——MFC串口助手(一)—初級版&#xff08;串口設置、初始化、打開/關閉、狀態顯示&#xff09;,附源碼1 問題描述 程序運行后串口默認參數&#xff0c;與我們預期不完全一致…

Astro:前端性能革命!從原生 HTML 到 Astro + React 的升級指南

為什么程序員必須關注 Astro在網站性能和 SEO 日益關鍵的今天&#xff0c;靜態站點生成&#xff08;SSG&#xff09;再次成為焦點。Astro 作為一款專為內容驅動網站設計的現代前端框架&#xff0c;正引領一場輕盈革命。它強調服務器優先渲染&#xff0c;將頁面預先轉為純 HTML&…