|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
通常来讲,非常实用,不用模板创建的话,也可以直接复制粘贴进去使用哦!
! V2 P; n# |$ C% R% z w
6 l# j* g$ a& ?8 j. \[mw_shl_code=c,true]' [& b+ K8 ?4 E8 P' m |, W8 }
#include <stdarg.h>: c; W9 t, f' @+ {0 ^0 A: N" X' d
1 v4 M6 n2 S- ?) p& ystatic void ECHO(const char *format, ...)
* J. F5 F9 D* s8 ^{
6 |" O8 o0 }9 l, {4 i2 m0 C char msg[UF_UI_MAX_STRING_LEN+1];
1 I D* q K- M9 d' j+ Q* h( ]1 ?5 B va_list args;
8 @% i& F7 P& ]" w2 o va_start(args, format);7 n; c8 g- i F" H* v( L
vsnprintf(msg, sizeof(msg), format, args);
5 M! E8 g/ c. x. p3 E va_end(args);
/ w- i- s- ]" y% D r UF_UI_open_listing_window();; e/ v: n; x- u, Z6 P
UF_UI_write_listing_window(msg);
- {7 Z! E$ E) K) P- i9 i2 P UF_print_syslog(msg, FALSE);
4 [ ~0 ]6 p) T r( z}; v* W D$ G0 \
; b- C% |% \. }* F% z, x3 c. V6 d
#define UF_CALL(X) (report_error( __FILE__, __LINE__, #X, (X)))8 ?1 K T4 b' o1 q% Y
9 ?2 S% _- d: R( {; I
static int report_error( const char *file, int line, const char *call, int irc)
% o z4 N3 N A{
2 h7 `2 I' q1 D/ q if (irc)
! x. U! k, I8 m! w6 [" m7 u2 I {3 ]. O" `2 J0 X7 x4 y% n
char err[133];1 q, t3 R/ `+ k3 s: H8 r4 G5 T
8 h/ k0 f0 O- V1 O2 h) |! H UF_get_fail_message(irc, err);
, G9 |& Z# B7 P# x% Q, L# i" p ECHO("*** ERROR code %d at line %d in %s:\n",
Y' p& @9 `2 Z. { irc, line, file);: W. P2 X6 P. G' L
ECHO("+++ %s\n", err);" z3 W6 b& g. o `
ECHO("%s;\n", call);
1 x6 V" z" \" L& t }- D' r D" [, D4 \8 s
: U0 j4 ^, E, z2 S return(irc);
, `7 t* I9 e! M6 i3 |}[/mw_shl_code]+ O) N2 R7 b1 A5 H" P
5 e4 j8 Q: X$ T+ @/ p. U
|
|