- 博客(3)
- 收藏
- 关注
原创 C99 goto label地址实现C语言协程
以前用C语言中的switch case实现过一个简单的协程,并应用到了实际的项目里。文章在这里,C语言实现协程,最近了解到C99中,goto语句可以跳转到一个变量里,变量保存的是label的地址。于是瞬间想到,这个可以替换协程实现中的switch case的机制。首先,说明一下什么是goto到标签地址。int main() { static void* p = &&labe
2017-04-12 09:53:03 2513
原创 float数值update逼近目标数值算法
有一种场景需求,一个float数值,以一定的速度,逼近一个目标数值。不使用tween和差值算法,这里我们用一个超级简单的update自己来算。float curX;float targetX;float speed;void Update(){ if (curX != targetX) { if (curX > targ
2017-04-08 17:09:26 713
原创 C语言调用jni中JNIEnv指针使用和理解
使用C语言调用jni的时候,需要和java的环境对象和虚拟机对象交互。它们的C语言定义如下。typedef const struct JNINativeInterface* JNIEnv;typedef const struct JNIInvokeInterface* JavaVM;可以看到,JNIEnv和JavaVM是一个指针内心。其结构体包含了很多我们需要用的函数指针: j
2017-04-04 22:59:56 6504
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人