写个知识点吧,关于va_list的,也是关于2dx的
来源:互联网 发布:anker知乎 编辑:程序博客网 时间:2024/06/04 00:42
关于va_list,你知道多少?
先说一下我的了解吧。
废话不多说,先看一段下面的小程序:
void CCLog(constchar * pszFormat, ...)
{
printf("Cocos2d: ");
char szBuf[kMaxLogLen+1] = {0};
va_list ap;
va_start(ap, pszFormat);
vsnprintf(szBuf, kMaxLogLen, pszFormat, ap);
va_end(ap);
printf("%s", szBuf);
printf("\n");
}
该程序摘自2dx中的CCCommon.mm中。
如上程序,首先,定义一个va_list;然后,使用va_start来获取参数表中的各个参数;使用完毕后,使用va_end来结束使用。
说完va_list了,然后,解释一下这个函数的意义吧。该函数也没有别的意思,只是打印出一些日志。不用多解释什么,相信对2dx熟悉的同学都对CCLog很熟悉的。
void CCLog(const char * pszFormat, ...)
{
char buf[MAX_LEN];
va_list args;
va_start(args, pszFormat);
vsnprintf(buf, MAX_LEN, pszFormat, args);
va_end(args);
__android_log_print(ANDROID_LOG_DEBUG, "cocos2d-x debug info", "%s", buf);
}
上边这段程序摘自CCCommon.cpp。
这段程序,摘自应用在android平台。功能都是一样的。
其实,我想具体说一下关于这个函数的整体架构,但是有些东西还没了解清楚。就说到此处了,以免让人误入歧途。有什么不恰当的地方,还请看到的朋友帮忙解释一下。谢谢。
- 写个知识点吧,关于va_list的,也是关于2dx的
- 写一些关于Android的知识点记录
- va_list-关于方法变参的问题
- 关于Java的115个知识点梳理
- 关于 2dx v3.7 UIScale9Sprite的bug
- 2dx关于js响应layer触摸消息的bug
- 关于DX中三角形的构造顺序
- 关于VA_LIST
- 关于va_list
- 写个关于lcs模板的问题
- 关于map的知识点
- 关于String的知识点
- 关于JSP的知识点
- 关于View的知识点
- 关于指针的知识点
- 关于json的知识点
- 关于webview的知识点
- 关于Session的知识点
- 单链表
- MIUI ROM适配之旅第一天——认识Android手机2
- Hibernate实体相关的配置文件
- Hibernate4实战之Hibernate4注解零配置
- python 提取gif动态图像中的每一帧
- 写个知识点吧,关于va_list的,也是关于2dx的
- bzoj1666[Usaco2006 Oct]Another Cow Number Game 奶牛的数字游戏
- j2se回顾
- 标签和按钮
- [LeetCode8]Best Time to Buy and Sell Stock
- Android架构分析之硬件抽象层(HAL)
- android 友盟接入
- Java中的toString方法
- Spring 基础