QT 列印當前檔名,行號和函式名稱

2021-09-06 08:44:56 字數 619 閱讀 7579

定義:

#include #define mydebug()    qdebug() << tr("檔名: ") <<  __file__ << tr("行號: ")<<  __line__ << tr("函式名: ") <<  __function__;
在函式中執行mydebug()即可:

void mainwindow::doactionnew_slot()

執行結果:

"檔名: " ..\mainwindow.cpp "行號: " 39 "函式名: " doactionnew_slot
總結:在c語言中__file____line____function__是編譯器內建巨集,這些巨集定義不僅可以幫助我們完成跨平台的原始碼編寫,靈活使用也可以巧妙地幫我們輸出非常有用的除錯資訊。

__file__:代表源當前原始檔路徑及檔名;

__line__:代表該行**的所在行號

__function__:代表當前函式的函式名

printf 列印 檔名 函式名 行號

輸出原始檔的標題,目前執行行的行數,編譯的日期,編譯的時間。linux下實現 include int main printf 當前 行 d n line printf 當前源 檔名 s n file printf 當前檔案編譯的日期 s n date printf 當前檔案編譯的時間 s n tim...

C語言 列印呼叫函式的行號,檔名 函式名用於除錯

c語言為了除錯方便,經常需要在故障處輸出問題描述,此時能夠獲得呼叫函式的相關資訊,就會很方面找到問題所在,現在將實現方法描述如下 第一種方法 void debugout void 當該函式被呼叫時,輸出的是本函式的檔案檔名 函式名 函式所在行號,無法定位問題所在。方法二 define debug o...

在Vim中插入當前檔名

1.使用 即ctrl r 步驟如下 在insert模式下,先按ctrl r,游標處變成雙引號 再按 即可直接插入當前檔名 含路徑 關 於,可輸入 help 檢視詳細說明。此處簡要說明一下,ctrl r可以插入0 9號暫存器 numbered register 內的內容,也可以插入特殊暫存器 name...