強烈推薦 巨集定義乙個好用的printf

2021-10-08 06:16:16 字數 751 閱讀 7118

#define print_int

(i) \

printf

("%8s(),%s = 0x%x, %s = 0x%x \n"

, __function__, #i,

&(i)

, #i, i)

;

q:\ 為什麼要加這個斜槓

a:\ 相當於下面於下面一行printf…還是在#define後面,(因為**是一行一樣順序執行下來的)

再來看幾個引數

_function_

#i&(i)#ii

q:不對 不對 你還沒講前面這些亂七八糟的引數呢 !!!

a: hahaha…

別急。。。。上菜

%8s(),

%s = 0x%x,

%s = 0x%x

還是第乙個問題,%8s()是什麼鬼 ,後面的8是表示字元小於8位就空格替代,目的是為了對齊。

後面不解釋

#include 

#define print_int

(i) \

printf

("%8s(),%s = 0x%x, %s = 0x%x \n"

, __function__, #i,

&(i)

, #i, i);

int main

(int argc, char *ar**)

大師Martin Fowler強烈推薦的一本書

推薦閱讀 1.jruby 誰說魚與熊掌不可兼得原書 名 practical jruby on rails web 2.0 projects bringing ruby on rails to j a作者 ola bini 譯者 丁雪豐 出版日期 2008 年7 月更多資訊 隨著ror 的火爆和動態語...

寫乙個堆疊(OPC原則 校驗器) 強烈推薦!!!

include include include define maxsize 100 字元棧 棧頂元素 建立乙個棧 銷毀乙個棧 壓棧 彈出棧 返回棧中的資料個數 判斷棧是否為空 判斷棧是否滿 struct stackcdt typedef struct stackcdt stackadt stack...

乙個巨集定義的用法

巨集定義就是簡單的替換,之前沒見過帶符號的替換,看到這個有點懵了,記錄如下。這裡用 n,代替 fninfo n,l 用的很巧妙。define fninfo n,l n,measvalue measfntbl 以下為names.h中內容 fninfo dominmaxmidhilo,min fninf...