亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: 關(guān)于可變參數(shù)問(wèn)題...... [打印本頁(yè)]

作者: ruchong    時(shí)間: 2012-02-01 19:04
標(biāo)題: 關(guān)于可變參數(shù)問(wèn)題......
別人提供的日志庫(kù)只有inc 和Lib
#define DebugMsg(fmt, ...)\
    iLLTraceLog(__FILE__, __LINE__,__MODULENAME__, LL_TRACE, (fmt), __VA_ARGS__)

我所有的日志打印的時(shí)候沒(méi)有加\n, 這樣看日志非常不方便.....
能在這個(gè)宏里面把所有打印的日志后面都加上\n\n嗎?

多謝.....
作者: AD8018    時(shí)間: 2012-02-01 19:08
iLLTraceLog(__FILE__, __LINE__,__MODULENAME__, LL_TRACE, (fmt "\n\n"), __VA_ARGS__)
作者: ruchong    時(shí)間: 2012-02-01 19:12
回復(fù) 2# AD8018


    這樣實(shí)驗(yàn)過(guò), 不好用.......
作者: ddddddddd    時(shí)間: 2012-02-01 19:36
#define DebugMsg(fmt, ...)\
    do{iLLTraceLog(__FILE__, __LINE__,__MODULENAME__, LL_TRACE, (fmt), __VA_ARGS__);printf("\n\n");}while(0)
作者: ruchong    時(shí)間: 2012-02-02 09:38
回復(fù) 2# AD8018


   
看錯(cuò)了, 試過(guò)好用多謝.....
作者: 狗氣球    時(shí)間: 2012-02-02 14:23
回復(fù) 2# AD8018


    只要他這個(gè)fmt都是string literal就行……
    我見(jiàn)過(guò)變態(tài)的弄了個(gè)char數(shù)組傳進(jìn)來(lái)。
作者: AD8018    時(shí)間: 2012-02-02 17:22
本帖最后由 AD8018 于 2012-02-02 17:23 編輯

回復(fù) 6# 狗氣球

這事簡(jiǎn)單,AD經(jīng)常把代碼弄得很變態(tài)。。

  1. #define DebugMsg(fmt, ...)                                                                \
  2. do {                                                                                      \
  3.     char buf[1024];                                                                       \
  4.     size_t new_len = strlen(fmt) + 3;                                                     \
  5.     if(new_len <= sizeof(buf))                                                            \
  6.     {                                                                                     \
  7.         char *new_fmt = buf;                                                              \
  8.         sprintf(new_fmt, "%s\n\n", (fmt));                                                \
  9.         iLLTraceLog(__FILE__, __LINE__,__MODULENAME__, LL_TRACE, (new_fmt), __VA_ARGS__); \
  10.     }                                                                                     \
  11.     else                                                                                  \
  12.     {                                                                                     \
  13.         char *new_fmt = (char *)malloc(new_len);                                          \
  14.         sprintf(new_fmt, "%s\n\n", (fmt));                                                \
  15.         iLLTraceLog(__FILE__, __LINE__,__MODULENAME__, LL_TRACE, (new_fmt), __VA_ARGS__); \
  16.         free(new_fmt);                                                                    \
  17.     }                                                                                     \
  18. } while(0)
復(fù)制代碼

作者: 狗氣球    時(shí)間: 2012-02-03 14:05
所以說(shuō)還是別在這個(gè)級(jí)別封裝了……
作者: cjaizss    時(shí)間: 2012-02-03 14:34
ruchong 發(fā)表于 2012-02-02 09:38
回復(fù) 2# AD8018
默認(rèn)為字符串常量才可用,不過(guò)一般這里都采用字符串常量





歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2