自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

MyDriverC

广博,创新

  • 博客(43)
  • 收藏
  • 关注

转载 对象序列化类库MsgPack介绍

https://www.cppfans.org/1410.htmlMessagePack(以下简称MsgPack)一个基于二进制高效的对象序列化类库,可用于跨语言通信。它可以像JSON那样,在许多种语言之间交换结构对象;但是它比JSON更快速也更轻巧。支持Python、Ruby、Java、C/C++等众多语言。比Google Protocol Buffers还要快4倍。代码

2016-04-29 16:37:14 3424

转载 GCC 编译报错:程序中有游离的 \357’ \273’ \277’

http://blog.sina.com.cn/s/blog_4c451e0e0100wjnh.html中文下:cc -c -I. test.c -o output/obj/test.otest.c:1: 错误:程序中有游离的 \357’test.c:1: 错误:程序中有游离的 \273’test.c:1: 错误:程序中有游离的 \277’英文下:cc -c -I.

2016-04-26 17:36:37 835

转载 -std=c++11

-std=c++11就是用按C++2011标准来编译的,早期一些的是用C++1998编译的。现在好像都是开着用2011年标准编译的了。

2016-04-22 16:25:55 3111

转载 gsoap xml 自动映射 C/C++

gsoap xml 自动映射 C/C++

2016-04-22 13:15:38 3308

转载 C++语言实现的WebService开发库—gsoap应用介绍

因为项目中需要使用WebService,所以将webservice的有关东西温故了一下。以前采用C#,这几乎不成什么问题,毕竟C#与WebService几乎是同时火起来的,所以C#天然地支持webservice就不奇怪了。Java的情况大致与C#一样,C/C++就不同了,还好有gSOAP,就用一下吧。一、gSOAP简介gSOAP是一个开发SOAP和XML应用(它们组成了webser

2016-04-22 12:46:21 451

转载 struct2json -- C结构体与 JSON 快速互转库V1.0发布

http://blog.csdn.net/arminkztl/article/details/49861223struct2jsonstruct2json 是一个开源的C结构体与 JSON 快速互转库,它可以快速实现 结构体对象 与 JSON 对象 之间序列化及反序列化要求。快速、简洁的 API 设计,大大降低直接使用 JSON 解析库来实现此类功能的代码复杂度。

2016-04-22 11:18:32 3101

转载 XML Schema

可扩展标记语言架构是以可扩展标记语言(标准通用标记语言的子集)为基础的,它用于可替代文档类型定义(外语缩写:DTD);一份XML schema文件描述了可扩展标记语言文档的结构。约束XML文件。可以验证XML文件的元素 标签是否正确。

2016-04-22 11:15:55 311

转载 protobuf-c的学习总结

1、前言         项目中用到protobuf-c进行数据序列化,好处在于后期程序扩展性非常好,只需要改动proto的定义就可以保持兼容,非常的灵活方便。关于protobuf-c的详细介绍可以参考google官方文档。https://code.google.com/p/protobuf-c/。在此简单的介绍一下基本功能。proto文件格式如下所示:message AMessa

2016-04-22 10:58:48 1210

转载 gSOAP

The gSOAP toolkit was first introduced in 1999 as a research project at the Florida State University for generic XML communications by establishing a type-safe data binding between XML schema type

2016-04-21 17:40:47 407

转载 Java开源报表JasperReport、iReport4.5.1使用详解(一)

Java开源报表JasperReport、iReport4.5.1使用详解(一)          最近的项目中用到了报表,所使用的工具就是JasperReport4.5.1和iReport4.5.1,JasperReport和iReport的版本一定要对应.一、简介        JasperReport是一个强大、灵活的开源报表生成工具,能够展示丰富的页面内容,并将之转

2016-04-15 14:54:05 1571

转载 iReport_web开发配置向导

http://blog.sina.com.cn/s/blog_68c37a59010169ao.html一、iReport简介说到iReport不得不先介绍Jasperreport,Jasperreport是一个报表制作程序,用户需要按照它制定的规则编写一个XML文件,然后得到用户需要输出的格式文件。它支持输出的文件格式包括PDF,HTML,XML,XLS,CVS等等。

2016-04-15 14:41:43 451

转载 应用程序中的错误处理

典型的情况是应用的代码运行在非保护模式下。由于应用的代码不是被Lua调用的,Lua根据上下文情况来捕捉错误的发生(也就是说,Lua不能调用setjmp)。在这些情况下,当Lua遇到像"not enough memory" 的错误,他不知道如何处理。他只能调用一个panic函数退出应用。(你可以使用lua_atpanic函数设置你自己的panic函数)不是所有的API函数都会抛出异常,lua

2016-04-13 21:06:17 471

转载 如何将c结构数据传给lua(转)

最近需要使用lua来让策划那些配置一些逻辑,于是调研了一下lua是如何实现这部分工作的,最终发现一个通常的策划是利用lightuserdata和metatable来协调解决这个问题。也即将数据指针给lua,另外告诉它一个如何操作这些数据的metamethods即可。 请看下面的示例代码:[cpp] view plaincopytypedef struct

2016-04-12 17:46:34 1647

转载 Lua注册回调到C++

http://cn.cocos2d-x.org/tutorial/show?id=1896思路像所有语言一样,绑定回调主要是执行的任务执行到特定情形的时候,调用对用回调方法。 本文也一样,Lua注册回调到C++的核心思路是,当C代码执行到特定特定情形的时候,调用Lua的方法。我这里使用的是用lua_stack直接调用lua的方法,没有使用Cocos2d-x封装的那个dispat

2016-04-12 17:39:12 931

转载 Lua中的userdata

http://www.jellythink.com/archives/587话从这里说起在我发表《Lua中的类型与值》这篇文章时,就有读者给我留言了,说:你应该好好总结一下Lua中的function和userdata类型。现在是时候总结了。对于function,我在《Lua中的函数》这篇文章中进行了总结,而这篇文章将会对Lua中的userdata进行仔细的总结。对于文章,大

2016-04-12 17:36:46 590

转载 lua-5.1 和 lua-5.2 之间的一些差异

1. luaL_register 2 luaL_setfuncslua5.1 之中有一个luaL_register,用于把luaL_Reg 数组中的所有函数注册到lua中。但在lua5.2中已经不支持这一函数了,lua5.2的手册中建议使用luaL_setfuncs来替代luaL_register.使用如下。int luaopen

2016-04-12 17:32:48 1078

转载 lua 和 C 语言进行交互 —— 如何传递table

http://blog.csdn.net/cjfeii/article/details/25593509方法1:采用 lua_pushstring/lua_pushnumber 传递key、value,然后通过 lua_settable 设置 table 中的kv对,like this:[cpp] view plain copy print?

2016-04-12 17:00:01 995

转载 C++和Lua相互传递数据

本篇文章主要介绍C++和Lua相互传递数据。如果你还不知道怎么在C/C++里面调用Lua脚本的话,请参考这篇文章。本文主要介绍基本数据类型的传递,比如整型(int),字符串(string)、数字(number)及bool值。加载并运行Lua脚本由于在上一个教程里面已经介绍过如何在C/C++里面嵌入Lua,所以这一节就简单的介绍一下程序怎么用,配置就略过啦。

2016-04-12 16:43:27 942

转载 Lua的栈及基本栈操作

理解Lua栈Lua通过一个“虚拟栈”与C/C++程序进行数据交互,所有的Lua C API都是通过操作这个栈来完成相应的数据通信。Lua的这个“虚拟栈”解决了C/C++程序与Lua程序通信的两大问题:Lua使用垃圾回收,而C/C++需要手动管理内存。Lua使用动态类型,而C/C++使用的是静态类型。因 为这个栈在Lua

2016-04-12 16:38:55 5164

转载 从lua调用C函数

http://www.cnblogs.com/Lifehacker/archive/2013/05/26/calling_C_function_from_Lua.html最近在进入Lua编程的状态,一度令我困惑的是,Lua提供的功能少的可怜,跟自备电池的python相比,可说是简陋了。连table的打印,都需要自己实现,也因此有了一打的第三方方案。后来我想明白了,以Lua和C如此紧密的

2016-04-12 14:55:34 413

转载 Lua 与 C混合编程

http://blog.csdn.net/pbymw8iwm/article/details/7894141本文通过程序实例说明C调用lua脚本和lua调用C的方法:先建立一个 test.c文件:#include #include #include "lua.h"#include "lualib.h"#include "lauxlib.h"#prag

2016-04-11 15:55:39 1404

转载 Luajit笔记---关于如何FFI与C++代码交互

http://blog.csdn.net/fg5823820/article/details/8266638Luajit最吸引的大概就是FFI,想知道这是什么就去官网上看,简单来说就是一个能让你在LUA里写C代码的东西,所以感觉很强大,这样与C交互的时候就不比去操作恶心的LUA堆栈。不过FFI就目前我的认知来说,没有看起来的那么美好,首先一点就是无法注册宿主程序里的函数,最早我

2016-04-11 14:59:11 824

转载 LuaJIT之callback大坑绕路记

http://www.360doc.com/content/13/0226/15/9200790_268017030.shtml近期在做node.js的LuaJIT port。LuaJIT是当前已知最快的脚本JIT编译器,拿来做服务器再好不过。发现node.js底层所用的库libuv简直是个神器,包含了网络、文件系统、计时器等等一堆堆的有用功能,windows、linux、MacO

2016-04-11 13:58:06 823

转载 符号表,nm命令,EXPORT_SYMBOL 与 EXPORT_SYMBOL_GPL

http://blog.csdn.net/zuosifengli/article/details/7239622http://shaojiashuai123456.iteye.com/blog/840015http://www.cnblogs.com/itech/archive/2012/09/16/2687423.htmlEXPORT_SYMBOL

2016-04-11 13:47:11 736

转载 控制符号的可见性

http://my.huhoo.net/archives/2010/03/post-52.html 在普通的C语言中,如果您希望将函数或者变量限制在当前文件中,需要对其使用static关键字。然而,在一个包含很多文件的共享库中,如果您希望某个符号可以被共享库内部的几个文件访问,而又不提供给外部,则对符号进行隐藏处理就会比较困难。大多数的连接器都提供一些便利的方法来隐藏或者显示模块中

2016-04-11 13:41:33 1301

转载 luajit笔记---编译成静态库以及FFI绑定宿主程序函数

http://blog.csdn.net/fg5823820/article/details/8888207本以为可以像lua一样把代码丢进去直接编译就好了,结果发现luajit有一堆汇编代码,不知道怎么处理,后来一搜索才知道luajit本身提高的批处理也可以编译成静态库,就是在后面加个static,郁闷到了。http://blog.csdn.net/whitehack/article

2016-04-11 11:21:34 856

原创 luajit ffi 访问C动态库

luajit ffi so

2016-04-11 10:55:00 2868

转载 linux程序同时链接动态库与静态库

在应用程序需要连接外部库的情况下,linux默认对库的连接是使用动态库,在找不到动态库的情况下再选择静态库。使用方式为:gcc test.cpp -L. -ltestlib如果当前目录有两个库libtestlib.so libtestlib.a 则肯定是连接libtestlib.so。如果要指定为连接静态库则使用:gcc test.cpp -L. -static -ltes

2016-04-08 14:51:51 627

转载 linux静态链接库与动态链接库详解

一顺便说说了哦  通常情况下,对函数库的链接是放在编译时期(compile time)完成的.所有相关的对象文件(object file)与牵涉到的函数库(library)被链接合成一个可执行文件(executable file).程序在运行时,与函数库再无瓜葛,因为所有需要的函数已拷贝到自己门下。所以这些函数库被成为静态库(static libaray),通常文件名为"libxxx.a"的形

2016-04-08 14:51:22 228

转载 lua ffi access to alien static or global variables

http://www.freelists.org/post/luajit/lua-ffi-access-to-alien-static-or-global-variables,5The symbols must be extern and not static. On Windows, the symbolson the C side must be declared as __decl

2016-04-08 14:26:58 381

转载 Extending Lua to C using the LuaJIT FFI library

https://knowledge.autodesk.com/support/stingray/learn-explore/caas/CloudHelp/cloudhelp/ENU/Stingray-Help/stingray-help/creating-gameplay/scripting-with-lua/calling-c-from-lua/using-luajit-ffi-html.htm

2016-04-08 14:21:27 538

原创 在C中使用LuaJit FFI

.cpp代码如下extern "C" { #include #include #include #include "/data/project/LuaJIT-2.1.0-beta2/src/lua.h" #include "/data/project/LuaJIT-2.1.0-beta2/src/lualib.h" #include "/data/proje

2016-04-08 14:04:02 1749

转载 ZeroMQ 的模式

http://blog.codingnow.com/2011/02/zeromq_message_patterns.html在需要并行化处理数据的时候,采用消息队列通讯的方式来协作,比采用共享状态的方式要好的多。Erlang ,Go 都使用这一手段来让并行任务之间协同工作。最近读完了 ZeroMQ 的 Guide。写的很不错。前几年一直有做类似的工作,但是自己总结的不好。而

2016-04-08 13:41:24 352

转载 tolua++简介

tolua++是一种第三方的软件包,可以为Lua提供面向对象的特性,这样我们就可以使用Lua来编写使用C++语言库的脚本文件.FFI 只能绑定 C 的结构和函数,所以要用 FFI 来绑定 C++ 接口,那么需要编写一个 C++ -> C 的封装层。现在 cocos2d-x 3.0 引入的 binding-generator 已经部分替代了 tolua++ 的功能,但仍然需要依赖 t

2016-04-08 13:30:23 3201

原创 LuaJit ffi 访问C中的结构体

LuaJit是另一个Lua语言的解析器。LuaJIT 是采用 C 和汇编语言编写的 Lua 解释器与即时编译器。LuaJIT 被设计成全兼容标准的 Lua 5.1 语言,同时可选地支持 Lua 5.2 和 Lua 5.3 中的一些不破坏向后兼容性的有用特性。因此,标准 Lua 语言的代码可以不加修改地运行在 LuaJIT 之上。LuaJIT 和标准 Lua 解释器的一大区别是,LuaJIT 的

2016-04-08 13:18:19 3404

转载 linux gcc

-Wl选项告诉编译器将后面的参数传递给链接器。gcc的-E选项,可以让编译器在预处理后停止,并输出预处理结果。在本例中,预处理结果就是将stdio.h 文件中的内容插入到test.c中了。-ldl选项,表示生成的对象模块需要使用共享库-L 只是加入搜索库的路径,-l指定要链接的库 -ldl, dl就是库的名字-lm-l specifies the library you w

2016-04-08 11:24:53 283

转载 Lua学习笔记六——package

http://blog.csdn.net/hong201/article/details/4163378lua和其他语言一样,也有模块/包的概念,稍微有点不同的是,默认先从环境变量LUA_PATH中搜索lua文件,如果搜索不到,则从LUA_CPATH中搜索C文件。  对于我来说,时而去改变环境变量,则显得麻烦,并且在另外的环境中部署时还要修改环境变量,则显得不人

2016-04-07 17:30:15 253

转载 LUA require 搜索路径指定方法

http://blog.csdn.net/langeldep/article/details/8289199如果是一个 *.LUA 的文件, 里面用到了自己写的库, 或者第三方写的库, 但是你不想把它放到 lua 的安装目录里, 则在代码里面可以指定require搜索的路径。    package.path = '/usr/local/share/lua/5.1

2016-04-07 17:25:39 3053

转载 Programming in Lua

http://www.lua.org/pil/contents.html

2016-04-07 12:00:39 301

转载 Embedding LuaJIT in 30 minutes (or so)

https://en.blog.nic.cz/2015/08/12/embedding-luajit-in-30-minutes-or-so/Embedding LuaJIT in 30 minutes (or so)12.8.Since you’re reading this, you probably know Lua, the world’s most inf

2016-04-07 11:36:33 788

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除