summaryrefslogtreecommitdiff
path: root/src/lua51/misc.c
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2020-10-01 14:35:21 +0800
committerchai <chaifix@163.com>2020-10-01 14:35:21 +0800
commitdc0e292e76a00fb43ad7fbdd6d65a560927ce981 (patch)
tree199b64a68eed6909733ab2b93cbe52c1e655f477 /src/lua51/misc.c
parent63cb4fbbb961da133c68865845eaf22d9b876700 (diff)
*gc
Diffstat (limited to 'src/lua51/misc.c')
-rw-r--r--src/lua51/misc.c47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/lua51/misc.c b/src/lua51/misc.c
new file mode 100644
index 0000000..557a05c
--- /dev/null
+++ b/src/lua51/misc.c
@@ -0,0 +1,47 @@
+#include "misc.h"
+#include <stdarg.h>
+#include <string.h>
+
+void log(const char* fmt, ...)
+{
+ va_list ap;
+ va_start(ap, fmt);
+
+ int i = 0;
+ while (fmt[i] != '\0')
+ {
+ if (fmt[i] != '%')
+ {
+ printf("%c", fmt[i]);
+ i++;
+
+ continue;
+ }
+
+ fmt++; // 跳过%
+ switch (fmt[i])
+ {
+ case 'c': // 得到一个字符
+ char cc;
+ cc = (char)va_arg(ap, int);
+ printf("%c", cc);
+ break;
+ case 'd': // 得到一个整数
+ int dd;
+ dd = (int)va_arg(ap, int);
+ printf("%d", dd);
+ break;
+ case 's': // 得到一个字符串
+ char *ss;
+ ss = va_arg(ap, char*);
+ printf("%s", ss);
+ break;
+ }
+
+ va_end(ap);
+ }
+
+ printf("\n");
+}
+
+