20

cygwin找不到的命令在这里

cygwin命令cygwin找不到的命令在这里

clear
clear包含在 ncurses 包中,直接从默认源安装即可。
ncurses 是一个基于终端界面开发 类GUI应用程序 的库。

xgettext,msginit,msgfmt
这几个命令属于 gettext_devel 包,用于生成pot/po文件,以及编译po到mo格式。

aclocal
aclocal在 automake 包中,默认源中包含。

autoreconf
autoreconf在 autoconf 包中,默认源中包含。

telnet
安装 xinetd 和 inetutils 包即可,默认源中包含。

20

TI-RPC客户端、服务端接口实例

TI-RPC客户端服务端接口实例,cygwin libtirpc,

  • 如何传递参数和结果?
  • 绑定如何进行?
  • 传输协议如何处理?
  • 调用语义是什么?
  • 使用什么数据表示形式?

参数传递
TI-RPC允许将单个参数从客户端传递到服务器。如果需要多个参数,则可以将这些组件组合成一个被视为单个元素的结构。从服务器传递到客户端的信息作为函数的返回值传递。无法通过参数列表将信息从服务器传递回客户端。

捆绑
客户必须知道如何联系服务。两个必要的方面是找出服务器所在的主机,然后连接到实际的服务器进程。在每个主机上,一个名为rpcbind的服务管理RPC服务。TI-RPC使用可用的主机命名服务(例如主机文件,NIS +和DNS)来查找主机。

传输协议
传输协议指定如何在客户端和服务器之间传输呼叫消息和回复消息。TS-RPC使用TCP和UDP作为传输协议,但是TI-RPC的当前版本与传输无关,因此可以与任何传输协议一起使用。

呼叫语义
调用语义定义了客户端可以对远程过程的执行承担什么;特别是该过程执行了多少次。这些语义对于处理错误条件很重要。这三种选择分别是一次,最多一次和 至少一次。ONC +提供至少一次语义。远程调用的过程是幂等的:每次调用它们都应返回相同的结果,即使经过多次迭代也是如此。

数据表示
数据表示形式描述了参数和结果在流程之间传递时所使用的格式。为了在各种系统体系结构上起作用,RPC需要标准的数据表示形式。TI-RPC使用外部数据表示(XDR)。XDR是与机器无关的数据描述和编码协议。使用XDR,RPC可以处理任意数据结构,而不管不同主机的字节顺序或结构布局约定如何。有关XDR的详细讨论,请参见附录A,XDR技术说明和附录C,XDR协议规范。 Continue reading

18

gdb调试命令及基本使用姿势

gdb调试命令及基本使用姿势,C/C++调试工具gdb的基本使用姿势,linux下gdb调试,gdb调试工具,gdb调试命令,gdb调试教程,gdb调试实例

一、gdb命令

1、运行命令

run:(简写 r) ,其作用是运行程序,当遇到断点后,程序会在断点处停止运行,等待用户输入下一步的命令。
continue (简写c ):继续执行,到下一个断点处(或运行结束)
next:(简写 n),单步跟踪程序,当遇到函数调用时,也不进入此函数体;此命令同 step 的主要区别是,step 遇到用户自定义的函数,将步进到函数中去运行,而 next 则直接调用函数,不会进入到函数体内。
step (简写 s):单步调试如果有函数调用,则进入函数;与命令n不同,n是不进入调用的函数的
until:(简写 u)当你厌倦了在一个循环体内单步跟踪时,这个命令可以运行程序直到退出循环体。
until+行号: 运行至某行,不仅仅用来跳出循环
finish: 运行程序,直到当前函数完成返回,并打印函数返回时的堆栈地址和返回值及参数值等信息。
call 函数(参数):调用程序中可见的函数,并传递“参数”,如:call gdb_test(55)
quit:(简写 q) ,退出gdb Continue reading

17

C++ cygwin环境测试JSON库报错:cannot find -ljson

C++ cygwin环境测试JSON库报错:cannot find -ljson

这么写报错:

这么写还报错:

就想不明白了,到根目录下的/lib文件夹看看

恍然大悟呀,这会我才想起来,当初Cygwin Setup安装JSON库的时间,库的开发包名称就是libjsoncpp-devel,编译命令改为如下:

通畅了。

 

17

N个强大而实用的C/C++框架和库简介及下载地址

N个强大而实用的C/C++框架和库C框架C库C第三方库C++框架C++库C++第三方库

值得学习的C语言开源项目- 1. Webbench Webbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webbench使用C语言编写, 代码实在太简洁,源码加起来不到600行。
下载链接:http://home.tiscali.cz/~cz210552/webbench.html
- 2. Tinyhttpdtinyhttpd是一个超轻量型Http Server,使用C语言开发,全部代码只有502行(包括注释),附带一个简单的Client,可以通过阅读这段代码理解一个 Http Server 的本质。
下载链接:http://sourceforge.net/projects/tinyhttpd/
- 3. cJSONcJSON是C语言中的一个JSON编解码器,非常轻量级,C文件只有500多行,速度也非常理想。
cJSON也存在几个弱点,虽然功能不是非常强大,但cJSON的小身板和速度是最值得赞赏的。其代码被非常好地维护着,结构也简单易懂,可以作为一个非常好的C语言项目进行学习。
项目主页:http://sourceforge.net/projects/cjson/
- 4. CMockerycmockery是google发布的用于C单元测试的一个轻量级的框架。它很小巧,对其他开源包没有依赖,对被测试代码侵入性小。cmockery的源代码行数不到3K,你阅读一下will_return和mock的源代码就一目了然了。
主要特点: Continue reading

12

C++ std::string 二级分隔字符串实例

std::string 二级分隔字符串Cookie字符串分隔

分隔字符串的使用场景很多,所以一定要至少掌握一种适合自己的处理方法。c++中的std::string类,使用我们操作字符相对简单了很多。

下面实例是处理Cookie字符串的场景,源码如下:

 

输出:

 

10

c++报错:Segmentation fault (core dumped)

c++报错:Segmentation fault (core dumped)

同一种报错提示,不代表实质的相同的错误。

我的错误原因是在定义map类型数据时使用了指针,当插入数据时,就出现上面报错。

我的错误的大致写法如下:

因为源码繁杂,上面是我按错误原理写的源码。

错误的原因就是,当对象的下级对象,不能使用指针操作。

但是不能保证使用其它方法,是否对象下的对象可以使用指针。

 

09

c++ std::string 用法

c++ std::string 用法

string类的字符操作:

注:对于string中对象字符的处理,有很多已有的函数在CCtype头文件中,可以很方便的应用 Continue reading

09

C++ 报错:error: default argument given for parameter 2 of [-fpermissive]

C++ 报错:

c++可以在类的声明中,也可以在函数定义中声明缺省参数,但不能既在类声明中又在函数定义中同时声明缺省参数。因此,将定义或声明中的任意一个缺省参数删除即可。

 

十二 31

用Express构建的几种流行的Node.js框架

用Express构建的几种流行的Node.js框架

在Express上构建了几种流行的Node.js框架:

  • Feathers:数分钟即可构建原型,数天即可投入生产。
  • ItemsAPI:在后端搜索基于Express和Elasticsearch构建的Web和移动应用程序。
  • KeystoneJS:具有自动生成的React.js管理界面的网站和API应用程序框架/ CMS。
  • Poet:具有即时分页,标签和类别视图的轻量级Markdown Blog引擎。
  • Kraken:安全且可扩展的层,通过提供结构和约定来扩展Express。
  • LoopBack:高度可扩展的开源Node.js框架,用于快速创建动态的端到端REST API。
  • MEAN:独树一帜的全栈JavaScript框架,可简化和加速Web应用程序的开发。
  • Sails:Node.js的MVC框架,用于构建实用的,可用于生产的应用程序。
  • Hydra-Express:Hydra-Express是一个轻量级的库,它有助于使用ExpressJS构建Node.js微服务。
  • Blueprint:用于构建API和后端服务的SOLID框架
  • Locomotive:Passport.js的制造商为Node.js提供的强大MVC Web框架
  • graphql-yoga:功能全面,简单轻巧的GraphQL服务器
  • Express Gateway:以Express为基础的功能齐全且可扩展的API网关
  • Dinoloop:由TypeScript支持的Rest API应用程序框架,具有依赖项注入
  • Kites:基于模板的Web应用程序框架
  • FoalTS:用于构建企业级Node.js应用程序(TypeScript)的下一代框架。
  • NestJs:一个渐进式的Node.js框架,用于在TypeScript和JavaScript(ES6,ES7,ES8)之上构建高效,可伸缩的企业级服务器端应用程序
  • Expressive Tea:一个小型框架,可使用即开即用的Typescript和Express构建可调制,干净,快速和描述性的服务器端应用程序。