Linux下gdb調(diào)試打印字符串方式
一. gdb 調(diào)試打印字符串
在 gdb 調(diào)試中,有時(shí)候需要打印一些字符串。
可以使用如下命令進(jìn)行字符串的打印。
如下:
x/s 命令
以下面代碼為例,說(shuō)明打印字符串的操作。
代碼如下:
#include <stdio.h>
int main(void)
{
char buffer[100] = {0};
snprintf(buffer, sizeof(buffer), "%s", "hello,world!");
printf("***buffer: %s\n", buffer);
return 0;
}下面打印 buffer 中的字符串,
操作如下:

可以看到,當(dāng)輸入 x/s buffer 命令時(shí),打印了數(shù)組 buffer 中的字符串。
二. 打印變量的類(lèi)型與變量所在的文件
打印變量類(lèi)型
在 gdb 調(diào)試中,有時(shí)候需要打印變量的類(lèi)型,
命令入下:
whatis 變量名 或 ptype 變量名
以下面代碼為例,說(shuō)明一下打印變量的類(lèi)型操作,
代碼如下:
#include <stdio.h>
struct student{
char name[100];
int age;
};
int main(void)
{
struct student st = {"Tom", 20};
printf("***st.name: %s, st.age: %d\n", st.name, st.age);
return 0;
}下面在 gdb 調(diào)試中,打印變量的類(lèi)型。
可以看到 whatis 命令與 ptype 命令都可以打印變量的類(lèi)型,而 ptype 類(lèi)型打印出了更詳細(xì)的變量類(lèi)型信息。

可以看到,查看 變量類(lèi)型的命令 " whatis 變量名 " 或者 " ptype 變量名 " 的不同效果。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
nacos在linux下啟動(dòng)startup.sh報(bào)錯(cuò)問(wèn)題及解決
遇到Nacos啟動(dòng)錯(cuò)誤提示“Permission denied”,可通過(guò)執(zhí)行命令chmod u+x *.sh給予startup.sh執(zhí)行權(quán)限,解決權(quán)限問(wèn)題,啟動(dòng)成功,這是一種常見(jiàn)的解決Linux下腳本執(zhí)行權(quán)限問(wèn)題的方法2023-03-03
Ubuntu14.04 opencv2.4.8和opencv3.3.1多版本共存的實(shí)現(xiàn)方法
下面小編就為大家分享一篇Ubuntu14.04 opencv2.4.8和opencv3.3.1多版本共存的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-12-12
Gzip在apache2中的設(shè)置和squid對(duì)它的處理
gzip可以級(jí)大的加速網(wǎng)站.有時(shí)壓縮比率高到80%,近來(lái)測(cè)試了一下,最少都有40%以上,還是相當(dāng)不錯(cuò)的.在Apache2之后的版本,模塊名不叫g(shù)zip,而叫mod_deflate2011-12-12
Centos5.4+Nginx-0.8.50+UWSGI-0.9.6.2+Django-1.2.3搭建高性能WEB服務(wù)器
這篇文章主要介紹了Centos5.4+Nginx-0.8.50+UWSGI-0.9.6.2+Django-1.2.3搭建高性能WEB服務(wù)器的相關(guān)資料,需要的朋友可以參考下2016-02-02
Linux操作系統(tǒng)安裝圖文配置教程詳細(xì)版
這篇文章主要為大家詳細(xì)介紹了Linux操作系統(tǒng)安裝圖文配置教程,幫助大家順利的安裝Linux操作系統(tǒng),感興趣的小伙伴們可以參考一下2016-09-09
CentOS7 配置Nginx支持HTTPS訪問(wèn)的實(shí)現(xiàn)方案
這篇文章主要介紹了CentOS7 配置Nginx支持HTTPS訪問(wèn)的實(shí)現(xiàn)方案的相關(guān)資料,這里實(shí)現(xiàn)該功能的步驟進(jìn)行了詳解,需要的朋友可以參考下2016-11-11

