常见编码格式及字符集主要有如下几种: ASCII: 表示英语及西欧语言,用7个二进制位表示,能够表示128个字符,扩展表示用8个二进制位,表示256个字符。
GB2312: 国家简体中文字符集,兼容ASCII,使用16个二进制位表示,能够表示7445个汉字,包含6763个汉字,几近覆盖所有高频率汉字,是中国大陆的主要编码方式。当文章或网页包含繁体中文、日文、韩文等时,这些内容可能无法被正确编码和显示。
BIG5: 繁体中文编码方式,使用16个二进制位表示,表示13053个汉字,主要在台湾地区使用。
GBK: 它是GB2312的扩展,加入对繁体字的支持,兼容GB2312,使用16个二进制位表示,可表示21886个字符。虽然GBK支持简体和繁体中文,但对其他非拉丁字母语言的支持还是有问题的。
UNICODE: 世界650种语言的统一编码格式,有三种编码方式,分别为UTF-8、UTF-16、UTF-32,其中,以UTF-8最为通用,俗称“万国码”。UTF-8中字符使用8位序列来编码,用一个或几个字节来表示一个字符,它保留了ASCII码的编码作为它的一部分。
GB18030: 采用变字节编码,1个字节表示ASCII,2字节,4字节,可表示27484个字符,兼容GBK,解决了中文、日文、朝鲜语等的编码。
UCS: 国际标准ISO10646定义的通用字符集,与unicode类似,UCS-2与UNICODE兼容。具有两种格式,UCS-2、UCS-4,分别是2字节和4字节。
ISO-8859-1: 扩展ASCII,表示西欧、希腊语等。使用8位二进制位进行编码。
按所表示的文字分类,可以将字符编码格式分类如下: 语言字符集正式名称英语、西欧语ASCII,ISO-8859-1MBCS多字节简体中文GB2312MBCS多字节繁体中文BIG5MBCS多字节简繁中文GBKMBCS多字节中文、日语、朝鲜语GB18030MBCS多字节各国语言UNICODE,UCSMBCS多字节 注:MBCS,Multi-Byte Character System,多字节字符集,是一种替代Unicode以支持无法用单字节表示的字符集如中文、日文等的方法,为国际市场编码时应考虑使用Unicode或MBCS字符集,或使程序能够通过更改开关生成支持两种字符集之一的程序。最常见的MBCS的实现是双字节字符集DBCS。
Eclipse配置好PyDev插件后,我们可以在eclipse的集成环境下开发和调试Python程序啦,起始之出,就遇到了python程序的中文支持的问题。
见另一篇博客《Python如何支持中文》,我们已经在python模块的首行声明了本文件的编码格式:
# -*- coding:utf-8 -*- 但在运行程序的时候还是遇到了如下的问题: File "E:\pythonTest\src\testChinese.py", line 3
SyntaxError: Non-ASCII character '\xe5' in file E:\JavaFiles\pythonTest\src\testChinese.py on line 4, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
这是为什么呢?原来在Win7系统的简体中文环境下,默认使用的中文编码格式是GBK格式,而eclipse默认的编码格式为使用所在系统的编码格式。因此需要对eclipse进行默认编码格式的修改。
打开eclipse,Windows -> Preferences...
左侧导航到general -> Workspace,在右侧的Text file encoding中点击Other,选择UTF-8,点击OK。
再次打开Windows -> Preferences...
左侧导航到general -> Content Types,在右侧的Content Types中点击Text,选择Python File,在下方的Default encoding中输入UTF-8,点击Update。然后点击OK。
如此,我们修改了eclipse工作区间和python文件的默认编码格式,在有中文编码的python模块中,文件首行声明文件的编码格式,# -*- coding:utf-8 -*- 即可进行带有中文的python程序的开发和调试。
一、现状 调查了一下,主要有两种主流方式,WebRTC或者Flash。
1. WebRTC(不支持IE浏览器,已排除):网页实时通信(英语:Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。它于2011年6月1日开源并在Google、Mozilla基金会、Opera支持下已经成为ISO通信标准,跨平台(pc,安卓,iso),是未来趋势。
2. Flex+FMS方式实现(采用),优点是:FMS服务器是Adobe公司开发的基于Flash技术的主要支持流媒体的服务器软件,技术优势明显,方便的流媒体应用实现方式,稳定的运行状态。缺点,FMS是付费的,而且价格不菲(中文版价格¥65400)。
二、数据流量分析(FMS) 互联网的音视频传输主要测算方式是根据画面分辨率及其压缩比得出的码流(Data Rate)来计算视频数据量的负载。首先,要明确一下几点问题:
1、 通常一个在线观众要流畅的观看标清视频需要大概30k~40k的带宽流量。
2、 带宽的换算方法是128k的流量需要1M的网络带宽。
3、 服务器所要负载的带宽是按可承载的最高并发流量计算出来的。并发流量是指同时访问资源的流量值,如果是利用FMS技术,要想满足并发流量的需求就需要将流量累加。如100人同时访问视频资源则可计算出:
100人 * 30k = 3000k
3000k ÷ 128k/M = 23.4M(约20M带宽)
如果网站的视频观众最高并发量时达到100人,就需要至少20M的带宽;
如果网站的视频观众最高并发量时达到1000人,就需要至少200M的带宽;
如果网站的视频观众最高并发量时达到5000人,就需要至少1000M的带宽;
目前,国内正规服务器提供商常规配置:
30M宽带费用3万元/年(阿里云4核8G内存),
50M宽带费用5万元/年(阿里云4核8G内存),
100M带宽费用10万元/年(阿里云4核8G内存)。
以上测算均为理论值,并且是满负荷计算,在实际运营中服务器不会仅考虑满负荷和理论情况,大都在该基础上采用成倍数量级的服务器带宽资源来保障运行安全。
三、P2P(FMS5.0) P2P技术可以解决流量过大的问题。FMS5.0以前可以用FMS+stratus(也是adobe的技术)来实现p2p视频,网上说理论上可以节省70%~90%的流量。从现在查到的资料来看FMS5.0以后也可以实现p2p.
所以说,按照上一节的结果,如果100人在线的话,
30M*(10%~30%) ≈ 3M~10M,一年的服务器费用大概在10000元。
四、开发费用: 1. FMS授权:60000元
2. 服务器费用:10000元
合计:70000元 五、开发周期:2~3人月。 1. Demo中实现基本视频功能:5人天(0.25人月)
2. Demo实现p2p功能:10人天(0.5人月)
3. 整理分析网站视频模块需求:2人天(0.1人月)
4. 实现网站视频模块需求:20人天(1人月)
5. 测试,完善5天(0.25人月)。
6. 部署并排查5天(0.25人月)
合计,2.35人月。
2014-02-14
转载于:https://www.cnblogs.com/ustcyc/p/3549695.html
题目:输入一个链表的头结点,从尾到头反过来输出每个结点的值。链表结点定义如下:
struct ListNode
{ int m_nKey;
ListNode* m_pNext;
};
分析:这是一道很有意思的面试题。
该题以及它的变体经常出现在各大公司的面试、笔试题中。 #include <stdio.h> #include <stdlib.h> struct ListNode { int m_nKey; struct ListNode* m_pNext; }; void create_list(struct ListNode **pLn, int *arr, int i, int len) { struct ListNode *n; if (i >= len) { *pLn = NULL; return; } n = (struct ListNode *) malloc(sizeof(struct ListNode)); n->m_nKey = arr[i]; *pLn = n; i++; create_list(&(n->m_pNext), arr, i , len); } void show(struct ListNode *ln) { if (ln == NULL) { return; } show(ln->m_pNext); printf("
优先队列(priority queue) 优先队列是一种比较常用的结构,普通的队列是一种先进先出的数据结构,元素在队列尾追加,而从队列头删除。在优先队列中,元素被赋予优先级。
当访问元素时,具有最高优先级的元素最先删除。优先队列具有最高进先出 (largest-in,first-out)的行为特征。
c++ priority_queue STL priority_queue是拥有权值观念的queue,它允许在底端添加元素、在顶端去除元素、删除元素。优先级队列内部的元素并不是按照添加的顺序排
列,而是自动依照元素的权值排列, 权值最高者排在最前面。缺省情况下,优先级队列利用一个大顶堆完成。关于二叉堆概念,参见。
其实 priority_queue 调用 STL里面的 make_heap(), pop_heap(), push_heap() 算法实现,算是堆的应用的扩展形式。关于STL堆相关算法 参见。
下面对这几个函数做一个简单的介绍:
make_heap():根据随机迭代器first和last指定的范围[first,last)创建一个大顶堆,有两个make_heap版本函数,第一个函数使用‘<’进行比较,第二个模板
函数使用comp仿函数进行比较。make_heap()函数原型如下。
default (1) template <class RandomAccessIterator> void make_heap (RandomAccessIterator first, RandomAccessIterator last); custom (2) template <class RandomAccessIterator, class Compare> void make_heap (RandomAccessIterator first, RandomAccessIterator last, Compare comp ); push_heap():新添加一个元素在末尾,然后利用 siftup()函数,上溯函数来重新调整堆序。该算法必须是在一个已经满足堆序的条件下,添加元素。
和make_heap()一样有两个版本的模版函数。需要在push_heap()之前调用push_back()之类的函数在容器末尾添加一个元素。
pop_heap():把堆顶元素和数组或者是vector的末尾交换,然后end迭代器减1,执行siftdown()下溯函数来重新调整堆序。注意算法执行完毕后,最大的元素
并没有被取走,而是放于底层容器的末尾。如果要取走,则可以使用底部容器(vector)提供的pop_back()函数。和push_heap一样有两个版本的函数。
sort_heap():pop_heap可以获得堆顶的元素,我们可以迭代执行取堆顶元素,直到堆为空,这样就可以得到一个有序序列。此函数也有两个版本的模版函数。
下面先写一个用 STL 里面堆算法实现的与真正的STL里面的 priority_queue 用法相似的 priority_queue, 加深对 priority_queue 的理解。
代码如下:
#include <iostream> #include <algorithm> #include <vector> using namespace std; // 自定义优先级队列 template <class ElemType> class priority_queue_ { private: vector<ElemType> data_vec;//存放元素的容器 public: // 默认构造函数 ** priority_queue_() { data_vec = vector<ElemType>(); } // 带参数的构造函数 priority_queue_(ElemType *data, const int n); //判断优先队列是否为空 bool empty() { return data_vec.
最近在做数据结构的大作业,要写个简单的数据库,因此和 fstream 打交道略多。
ios::app: 以追加的方式打开文件 ios::ate: 文件打开后定位到文件尾,ios:app就包含有此属性 ios::binary: 以二进制方式打开文件,缺省的方式是文本方式。两种方式的区别见前文 ios::in: 文件以输入方式打开 ios:out: 文件以输出方式打开 ios::nocreate: 不建立文件,所以文件不存在时打开失败 ios::noreplace:不覆盖文件,所以打开文件时如果文件存在失败 ios::trunc: 如果文件存在,把文件长度设为0
以上是网络上都能找到的一些解释,但在使用过程中有些迷之问题。
1. ios::in | ios::out 在文件不存在的时候是不会创建新文件的,必须用个 ios::in | ios::out | ios::app
2. ios::app 无法seek到文件长度以外的地方 put('\0') 写一串空字符,根据网上有人说 ios::app 后就只能在文件后写,无法seek,有待验证,之后试验后补充
临时解决办法是 先用ios::app 在不存在的时候创建,再关闭,然后不用 ios::app 打开进行扩展空间
转载于:https://www.cnblogs.com/azard/p/3476364.html
搜集了几个网络诊断的命令,windows下的。
首先windows下的这几个命令都可以使用“--help”参数来查看帮助信息。
路由信息命令-----route 查看本地路由表 Route print
增加路由 Route add 网络地址(192.168.1.0) mask 255.255.255.0(掩码) 192.168.1.1(网关)
其中在末尾增加“-p”参数为增加为永久路由,即写入注册表,机器重启也不丢失。
在末尾增加“metric 10(数字)”参数为该路由设置优先级,数字越小,优先级越高。
****在末尾增加“if ip地址”参数为该路由设置网卡端口,在机器配有多网卡时候有用,此选项待测。
删除路由 Route delete 网络地址 mask 掩码 网关
当机器配有多网卡时,此删除命令会提示错误“指定路径找不到”,有人说这是win2003的小bug,具体解决方案没有找到,替代方案为增加一条优先级更高的此网段路由信息。
路由跟踪命令-----tracert “-d”参数禁止将ip解析为主机名。
端口信息命令-----netstat “-a”参数显示所有
“-n”以数字形式显示端口信息
“-o”显示与每个连接相关的进程id
这种方式比用结构体变量作函数参数效率高,因为无需传递各个成员的值,只需传递一个地址,且函数中的结构体成员并不占据新的内存单元,而与主调函数中的成员共享存储单元。这种方式还可通过修改形参所指成员影响实参所对应的成员值。 例如 struct book { char bookname[30]; int quantity; }; main() { void fun(struct book*p); struct book book1={"Programming in C",10}; fun(&book1); printf("%d copies\n", book1.quantity); } void fun(struct book*p) { printf("The book \" %s\" has ",p->bookname); p->quantity -=3; } 显示:The book "Programming in C" has 7 copies
此外,还可将结构体数组作为函数参数;还可设计结构体指针型函数,即返回的地址是指向结构体类型数据的。
本篇文章来源于 黑客基地-全球最大的中文黑客站 原文链接:http://www.hackbase.com/tech/2009-02-02/44971.html
This page contains the following errors: error on line 1 at column 1: Document is empty Below is a rendering of the page up to the first error. 这种情况是服务器处理返回了,但是返回的格式有问题,这里提示Document为空,后台是返回字符串: success 而service方法中: @Produces("text/xml") 改为: @Produces("application/json") 即可。
-----------------
有时候返回的不对,
即,正常返回的过程中,有输出。
也会出现这样的情况
近几次打印word文件时,每次打印完文件,打印机都会额外打印一张带有文件名、目录、模板、标题、主题……等信息的一页。
打开打印机选项后发现勾选了“打印文档属性”项。
解决办法:
随便打开一个word文件,点击“Office按钮”-->点击“打印”-->点击左下角的“选项”(本人使用的是office2007,其他版本可能有改动)
-->点击“显示”标签-->去掉“打印文档属性”前面的对勾。
再次试着打印一个文件,不会再额外打印含有文档属性信息的那一页了。
同步时间问题看似有些复杂,但是在搜索了一个服务器网址时发现一个人写的非常简洁、明了:
1.连接到世界时间服务器
2.接收服务器时间
3.设置系统时间并关闭连接
我在寻找一些函数源码时从一个解决方案里看到了一些时间服务器可供选择使用
time-a.nist.gov 129.6.15.28
time-b.nist.gov 129.6.15.29
time-a.timefreq.bldrdoc.gov 132.163.4.101
time-b.timefreq.bldrdoc 132.163.4.102
time-c.timefreq.bldrdoc.gov 132.163.4.103
utcnist.colorado.edu 128.138.140.44
time.nist.gov 192.43.244.18
time-nw.nist.gov 131.107.1.10
nist1.datum.com 66.243.43.21
nist1-dc.glassey.com 216.200.93.8
nist1-ny.glassey.com 208.184.49.9
nist1-sj.glassey.com 207.126.98.204
nist1.aol-ca.truetime.com 207.200.81.113
nist1.aol-va.truetime.com 205.188.185.33
在连接以上IP之后可以直接接收数据,但接收这些数据有个flag需要设置一下
代码片段
char data[4]; recv (m_sock, data, 4, MSG_PEEK); MSG_PEEK标志代表预先接收下一条数据,再详细的解释目前水平未到位,没理解到那么深 从服务器接收到的data数据是一个4字节的整型数字(注意系统的字节序),代表从1900年1月1日 0时0分0秒开始计算到现在时间经过的秒数
0, 用 import cv 测试,发现没有安装 opencv 模块。 首先先说本开发环境是在windows xp的环境下进行搭建的。 在搭建的过程中需要保证这三个条件: 1.python需要安装python-numpy模块,不然即使找到了cv模块也不能够运行。而且会出现“ImportError: numpy.core.multiarray failed to import”错误。 在装这个模块的实现需要保证python的版本与numpy的版本相一致,例如当前numpy的版本最高支持python2.6,因此如果你的python版本不是2.6的话则安装不了该模块。 ------------------------------- http://www.numpy.org/ Ubuntu & Debian sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose windows下载 http://www.lfd.uci.edu/~gohlke/pythonlibs/ numpy-MKL-1.7.1.win32-py2.7.exe (win32位) numpy-MKL-1.7.1.win-amd64-py2.7.exe (win 64位) ------------------------------------ 上面的用上了新版本 1.7.1 2.python的版本需要与OpenCV的版本相一致,否则导入cv模块会出错。 比如你安装了python2.6版本,则OpenCV需要安装2.0的版本,2.2的版本就不行。 ------------------------- OpenCV-2.3.1-win-superpack.exe 下载到的。 124MB,大小。 这个文件与 OpenCV-2.4.6.0.exe 这个文件解压后的目录结构不同。我没找到2.4.6 的文件位置。 暂时用 2.3.1 的。 \opencv231\opencv\build\python\2.7 这个目录下: cv2.pyd cv.py 二个文件复制到:D:\Python27\Lib\site-packages\ ------------------------- 而2.4.6 的文件是: opencv\build\python\2.7\ cv2.pyd ---------------- 对于执行import cv出现的找不到相关模块的问题其实在OpenCV本身的网站上就有说明: “Python 2.
curl是开源的东西,主要用于页面下载和上传 1、对于页面跳转的网站,最好先用sniffer把http数据包全部抓下,分析协议头,尤其是要对应好post后的url地址,以及记住cookie中的session_id(情况根据各网站会有所差别)。 2、 curl_easy_setopt(curl,CURLOPT_POST,1); 使用POST方式 3、curl_easy_setopt(curl,CURLOPT_POSTFIELDS,buffer) buffer对应content中的内容,类似"name=zhangsan&pwd=1234&Submit2=%B5%C7+%C2%BC&oriurl=%2F&flag=0"。 4、res=curl_easy_setopt(curl,CURLOPT_COOKIEFILE,""); 记下cookie到内存,可以在以后跳转中不用再设置cookie内容(根据网站设计有所差别) curl_easy_setopt(curl,CURLOPT_URL,host+posturl1)//首个地址 5、curl_easy_perform(curl); 6、curl_easy_getinfo(curl,CURLINFO_RESPONSE_CODE,&infocode); 7、通过的到的返回码,准备跳转 8、curl_easy_setopt(curl,CURLOPT_URL,host+url2) 新的跳转页面地址 9、curl_easy_perform(curl); 最后搞定。 需要注意的是host为网站服务url,后面的posturl为实际要请求的相对地址。 最简单的例子: #include <stdio.h>;
#include <curl/curl.h>;
#include <stdlib.h>;
int main(int argc, char *argv[])
{
CURL *curl; //定义CURL类型的指针
CURLcode res; //定义CURLcode类型的变量
if(argc!=2)
{
printf("Usage : file <url>;\n");
exit(1);
}
curl = curl_easy_init(); //初始化一个CURL类型的指针
if(curl!=NULL)
{
//设置curl选项. 其中CURLOPT_URL是让用户指定url. argv[1]中存放的命令行传进来的网址
curl_easy_setopt(curl, CURLOPT_URL, argv[1]); //调用curl_easy_perform 执行我们的设置.并进行相关的操作. 在这里只在屏幕上显示出来.
res = curl_easy_perform(curl);
//清除curl操作.
curl_easy_cleanup(curl);
}
return 0;
} 注:官网上有很多资料
QtCreator:没有CDB二进制档可用为二进制格式在'x86-windows-msvc2008-pe-32bit'"
安装VS2008后,又先后安装了qt-win-opensource-4.7.4-vs2008和qt-vs-addin-1.1.9。
为了熟悉Qt Creator开发工具,我安装了qt-creator-win-opensource-2.3.1。
当运行Qt Creator开发的工程时,报出如此错误:
QtCreator没有CDB二进制档可用为二进制格式在'x86-windows-msvc2008-pe-32bit'"
该错误的英文形式为:
The preferred debugger engine for debugging binaries of type 'x86-windows-msvc2008-pre-32bit' is not available. The debugger engine 'Gdb engine' will be used as a fallback.
Details: There is no CDB binary available for binaries in format 'x86-windows-msvc2008-pre-32bit'
该错误肯定是Qt Creator没有找到可用的编译器,解决办法如下:
第一种方法:安装dbg_x86_6.11.1.404.msi。 然后重启QtCreator即可!
在Tools-options-Tool Chains可以看到已经找到编译器Microsoft Visual C++ 9.0 (x86)
2. 方法二: 安装winsdk_web.exe, 这个不考虑了,因为它太大了,而且必须得在线安装。
----------------------------------------------------------------------------------------------------------------------
本文章参考的博客:http://tcspecial.iteye.com/blog/1545485
二十一、 江湖酒庄
前方有一土屋,但并无灯光。左飞扬道:“要不就在这里借宿一宿。”阿笛点头答允。
敲门不见应答。左飞扬道:“只怕里面没有人。”阿笛却道:“你细细聆听,屋内传来了呼吸之声,肯定有人,只是不愿意开门而已。”
左飞扬叹道:“想必是不愿意被打扰。我们再行择地吧。”
阿笛嗯了一声,但准备走开的时候,突然又回头,用力把门一推,咯吱,门竟然开了。
门后是一个老婆婆,显得惊慌失措。
“老婆婆,打扰了,实在不好意思,我们路过此地,旅途疲惫,请问可否借宿一宿?随便找个地方睡睡即可。”阿笛道。
老婆婆连忙摆手:“不干不干。你们快走吧。”
“我包里有一些碎银,你手下吧。”阿笛拿出一点银子,递给老婆婆。
老婆婆有点想接,但却不敢伸手。忽然道:“实在想不通你们到底要干什么!今天来了那么多人,把我这里都翻了好几遍了!现在又来!”
二人听后感觉莫名其妙。阿笛便问:“前面是否也有人到你这里?”
老婆婆叹道:“是啊,但不像你们这么客气。他们可凶了,吓得我的老头子大小便都失禁,现在躺在床上直打哆嗦。”
“能否详细道来?”说完,阿笛又从身上取出一些银两。
老婆婆面露喜色,于是便让二人进屋坐下,缓缓道:“下午时分,进来几个人,似官差打扮,又似江湖人士的装束,说什么管控什么司的,要来捉拿一个被全武林通缉的逃犯。他们翻箱倒柜,把家里都搜了一个遍。当然什么都找不到,于是骂了几声就走了。”
老婆婆说完,房间的床上想起了两声咳嗽。老婆婆道:“那是我老头子,唉,被吓得不轻啊。”
左飞扬道:“管控司的人这帮可恶?”心里不禁叹道,道京城上方一事,到时候势必和管控司打交道,恐怕并不容易。
阿笛又道:“老婆婆,你不是说来了很多人吗?是不是后来又有人闯入你们家里?”
老婆婆面露惊恐之色:“是啊,不过这次来的两个比那些管控司的人更为霸道。一男一女,都身穿黑衣,各自背了一把长刀。他俩之间说的话,我一句话都听不懂,好像什么亚美爹伊库啥的。前几年不小心在江浙沿岸碰到一些倭寇,凭记忆这两个人的发音,有点类似东洋音。他们一进门,就用半生不熟的官话问我们是否看到有人躲到此处。我和老头子当然摇头,他们却不信,竟然拔出刀来,把家里的柜子什么都劈开了。唉,可怜的柜子啊,还是当年我的嫁妆……”老婆婆说到此处泣不成声。左飞扬一瞧,屋子里果然乱七八糟,一张桌子也被劈成了两半。
左飞扬道:“可恶!”
老婆婆又说:“这两人走了之后不久,又来一人。仍穿黑衣,背负长剑,如果不戴着那顶斗笠,我还以为他和前面两个人是一伙的。他进来之后,一言不发,就在房间里来回踱步,似乎在寻找什么。我和老头子问都不敢问了,就只能在一旁看着。过了一会儿,他便走了。”
左飞扬道:“后面又来人了吗?”
“当然!这是你们来之前最后一批了。仍是一男一女,这次都没有带武器。男的长得白净,女的也很漂亮。他们和你们一样懂礼貌,一来就问我老婆婆好。但他们仍说要在这里找一个什么重要的东西,翻箱倒柜一番,当然也不会有什么结果。中途男的出去了一会儿,回来之后,神色紧张,拉着女的赶紧就走了。”
“哦?”阿笛也听得入神。
“对了,那两人一人骑着一匹马!你们也是骑马来的,他们的马虽然好,但比不上你们那匹马。”
左飞扬心里咯噔一下,心道,会不会是师弟和师妹?不会的,他们提前这么久出发,不应现在只到这里。
“唉,如果那些人都像你们俩这么老实本分就好了。”老婆婆叹了一口气,道,“如果是那样,老头子也不会吓成这样了。你们饿了吗?我给你们煮几个鸡蛋?最近到处有人杀鸡,说什么五毒门派到处下毒,鸡都不能吃了。但我养的这几只鸡,只吃院子里的虫子,保证不会有毒!”
“多谢老婆婆,不用了,我们肚子不饿。”左飞扬道,“我们今晚要借宿于此,可以吗?”
老婆婆点头:“可以,可以!我和老头子住一间屋。另外有一间屋,是我那儿子偶尔回来才住的。但那小子经常行踪不定,现在又不知道跑到哪里去风流快活了。所以它暂时是空着的。留给你们住?”说完,她用眼睛扫了一下左飞扬和阿笛。
“你住屋里,我就另外找一个地方睡好了。找点茅草,铺在厨房地上,也可以睡个安稳觉。”左飞扬赶紧对阿笛道。
“你们俩不睡一起?”老婆婆面露诧异之色。
左飞扬的脸变得通红。阿笛赶紧道:“我们住一个房间。不过,你家是否可以借给我们两床被子?”
老婆婆恍然大悟道:“原来是未过门的小媳妇呀。我明白了,明白了。好,就给你们两床被子。”
左飞扬让阿笛睡在床上,自己找了一点茅草铺到了地上。
正当他昏昏欲睡之时,却发现阿笛已经悄声地走了下来,把嘴巴贴到了他的耳畔:“你不觉得这里有点奇怪吗?”
左飞扬小声道:“如此多的人到这里来寻找某样东西,我自己也不由得有点好奇。”
“除此之外,还有不少问题。那位老婆婆,官腔甚重,倒不像普通的乡下妇人。躺在床上未露面的老公公,我想并不是真的卧病在床。另外,从房内的物品,也可以找出线索。比如,这里的木凳,上面都留有很深的印记,似乎此间的主人,内功深厚。因为好奇,我也仔细瞧了瞧房间里的物品,也发现了一些奇特之处。比如那扫帚,本是寻常之物,但却以铸铁为柄。除了习武人士,寻常百姓家谁会这样做?但方才从老婆婆的一番自述看,他们应不会丝毫武功才对。”
左飞扬点点头。
阿笛又用更小的声音说道:“晚上你睡觉一定要小心,如果有什么重要之物,切记随身携带,片刻不能离开自己。”
左飞扬睁大眼睛望着阿笛。窗户紧闭,没有烛光,但他却能够感受一双美丽的眼睛在漆黑的夜晚紧紧地盯着他。
第二天早晨,当左飞扬睁开眼睛的时候,阿笛已经端进来了一碗鸡蛋面,笑道:“老婆婆做的面很好吃,但我喜欢自己做,所以就给你来了一碗,你一定要尝尝。”
这碗热面在左飞扬看来无疑是极品美味。他赶紧爬了起来,脸也不洗,直接就拿起筷子把面往嘴里送,大口吃完,同时好好夸奖了阿笛一番。阿笛满脸红晕。
这时老婆婆也到了屋内。她笑道:“你们小俩口真有福气。”
该轮到左飞扬的脸上也泛红了。
老公公仍然躺在床上,似是昨日被吓得不轻。老婆婆仍不住摇头叹气,希望今日不要再有人进来乱翻东西。
虽然左飞扬他俩心有疑惑,但此时也不好多问。因为赶路要紧,便告别了老婆婆。同时阿笛又塞给了她一点银子。老婆婆盯着阿笛,泪流满面,一个劲地称赞她,但左飞扬却从她的眼神中读到了一丝诡异的笑容。
重新回到千里马上,阿笛对左飞扬道:“果然这老婆婆不是平常人物。昨晚她动过千里马。”
“何以见得?”左飞扬有点吃惊。
“我给马的身上涂了一种特殊的天竺香料。今天早晨我从老婆婆的手上闻到了这种味道。”
“香料?我怎么没有闻到?”
阿笛笑道:“不是每个人的鼻子都一样。也许你浑身汗臭,臭味闻多了,自然对香味不敏感了。”
“那她为什么要动千里马?马儿没事吧?”
“马没事,昨天涂了膏药之后,伤口已基本痊愈,所以今日可以正常赶路了。至于老婆婆为什么这么做,我也想不通。但按照我的观察,她似乎并无恶意。她一直在说别人在她家乱翻东西,她其实自己也在找着什么。也许不久之后有机会和他们再次相遇。”
千里马果然不寻常。那麂皮丝包也不是非凡之物。天还没有黑,他们就已顺利赶到了徐州城。
左飞扬问阿笛五毛散人住在何处,是否马上去找他。阿笛却提议先找一个饭馆好生吃喝一番。耐不住美味的诱惑,左飞扬也欣然赞同。
远远看到“江湖酒庄”的旗帜随风飘扬。左飞扬道:“从这招牌看,似乎是江湖人士会集之处。”
阿笛道:“人多也是最容易暴露自己的地方,这几天到处都有人找你麻烦,我们得小心谨慎才是。不过瞧瞧也无妨,因为人多的地方也最容易打探消息。”
“那还是稳重起见。我们不直接到那酒庄。江湖酒庄旁看似还有许多小饭馆,坐在里面,或许也能听闻许多天南海北之事。”
江湖酒庄果然气派非凡,是一座三层小楼,从上到下,都座无虚席。左飞扬他们挑了在酒庄斜对面的一个无名小饭馆,找地儿坐下,要了饭菜。
几口之后,阿笛道:“这菜味道不对。不要再吃。”
“有毒?”左飞扬惊道。
“当然无剧毒,不然我早已发现。只是这饭菜味道甚怪,似乎是江湖中传闻的一种慢性毒药。入肚之后,并无异常,常用来试毒的银针也无法发现它。但长久食之,便会四肢无力,武功尽失。”
“有这么厉害?”
阿笛此时站了起来,走到了饭馆门口。只见一小二竟在用一木勺舀取地上黑色之物。此物呈稠状,从远处缓缓流来。阿笛往前面一看,竟然是从江湖酒庄的楼下流过来的。
阿笛厉声问那小二:“你可是在取酒庄倒弃之油?”
小二吓了一跳,随即又满脸堆笑:“客官,这油不错,倒了可惜,拿回去煮一煮,过滤过滤,便又可食用。”
阿笛感到一阵恶心,竟有呕吐的感觉。此时,左飞扬也走了过来,一把抓住小二,喝到:“我们付钱在这里吃喝,你们竟如此不负责任?”
小二挣脱了他的手,道:“有本事你到那酒庄去吃喝,既想贪图便宜,就不要在乎你吃下去的东西是不是从别人嘴里吐出来的!”
阿笛道:“算了算了!这流经地沟之油,的确叫人恶心,长久食之,必然出问题,但也不至于带有这种罕见毒物。我猜测从那江湖酒庄流出来的油,本身就已有问题,我还真想去瞧瞧。”
二十 、善铁和近严 阿笛用身上的碎银找一路边农妇换了一些干粮,二人填饱肚子之后,决定继续前行,连夜赶路。左飞扬怕千里马承受不了。 阿笛道:“没有人比我更心疼它。但我知道,在它该发力的时候,一定不会退缩。古庙旁的那次逃脱,必定另有隐情。也是因为它比其他的马儿更为聪明,当时我就知道它不会躲到更远的地方。放心,它的体魄强健,连续奔走一昼夜也无事——不过不到万不得已,我也不会这么做的。” “天已经黑透,它跑得如此之快,会不会容易跌倒?我们要不弄一个火把?” “有了火把,容易暴露目标。我说过千里马非寻常马,即使没有月光星光,它也照样奔跑无误,从不出错。” 忽然前方有怪异的笑声。火光突现。两个人从路旁跳了出来,每人手中竟拿着一个火把。 “你们不点火把,我们可要点了。等候你们多时了。”这两个人笑道。 左飞扬十分诧异,怕遇到了拦路打劫之人。阿笛也一怔,但随即笑道:“原来是鼎鼎有名的善铁近严两位前辈!圣公近来安好?” 左飞扬一听,便知此二人是不圆子手下之人。功夫墙的人出现,定有一番恶战。他仔细打量了对方。没有握火把的手,一人持的是判官笔,一人拿的是一把镰刀。 阿笛用一种抑扬顿挫的声调说道:“大哥,给你介绍一下圣公门下的二位前辈,按排行虽然他们屈居于四大弟子之下,但却让江湖中人闻之色变。这位是药善铁,拿手功夫是十八路判官笔,如果谁惹怒了圣公,就要小心被他的判官笔轻轻一点——轻则重伤,重则致命。这位便是丁近严,专用镰刀割人舌头,让人生不如死,如果你胆敢说圣公一句坏话,就要小心他的镰刀了!” 左飞扬吸了一口冷气。仔细看看二人,拿判官笔的药善铁嬉皮笑脸,拿镰刀的丁近严一脸严肃。 “多谢姑娘夸奖!”药善铁嘻笑道,“判官笔几日未用,今日有幸能让它开开荤!这妹子模样挺俊,比我那十六个老婆都要好看,就留给我了。旁边那位公子嘛,就由近严弟打理。快快割下他的舌头,晚上一起回去喝酒!唉,又有美人相伴,又有美味下酒,真是惬意啊!” 听到对方一番话,左飞扬顿觉恶心,心中动怒。阿笛小声道:“这两人武功极其厉害,如果和他们硬拼,很难占上风,且容易露出破绽被他们打败。所以你就使出看家本领,只守不攻,等待他们露出破绽,然后使出致命一击。”说罢,取出一条马鞭,递给左飞扬:“这是千里马所配之马鞭,力道甚猛,但却从未用到千里马身上。不过对付眼前二人,你尽管放心使出你的功夫。” 左飞扬拿起马鞭,心中仍然忐忑不安。但阿笛的一番话对他还是有不少镇定作用。敌不动我不动。敌动我亦不动。抓准时机,防守为主,趁机反击。 药善铁把火把往地上一扔,大声道:“妹子怎能如此暴力?嘿嘿,我就喜欢有暴力倾向的女人!”说完挥动判官笔,在空中画了好几个十字。善铁判官笔一出,例无需招,江湖人闻之变色,七大掌门也畏惧之。可见药善铁拥有充足的自信。 “这支判官笔想必沾血无数,小妹我就是想取来细瞧一番,不知善铁前辈是否赏脸?” 药善铁露出一双色眼,目不转睛地盯着阿笛。“这么漂亮的小姑娘,要用老夫这笔在你身上点几下,还真是于心不忍。我说姑娘,要不你就放下武器,乖乖跟我回去享福吧。” 阿笛却也在原地纹丝不动。对方是一个色鬼无疑,但这么一说,也有别的目的,就是想激怒她,让她先出招。三十年前,江湖中流行的是先发制人。但如今江湖的旧秩序已经完全坍塌,本土的稀奇功夫,加上来自东洋西洋的各种歪门邪道,彻底把武林搅乱,先出招的往往更容易落下风,所以如今大家纷纷喜欢后发制人。 阿笛俏皮一笑:“我看你老人家也一把年纪了,十六个老婆放在家里面,想必终年也无事可干。红杏深宫藏,莫怪出墙枝。何不把她们拿出来分给众人,也让你老人家能专心练武,而不会像现在这样空拿一支无用的判官笔,缩头缩脑。” 药善铁哈哈大笑:“你放心,天下女人,进得了我家门,就天天在里面享福,莫要有出去的歪念头了!见你模样可爱,口舌伶俐,你若到我家中,地位本应为小十八的,我可以特批你为小三。” “小十八?”对这编号,阿笛也有点好奇。 “我自然是老大。我那正室,虽然丑了一点,但她父母乃武林老前辈,和圣公又有渊源,无论如何,地位自然不能动。其余妾室,由三开始,加以封号,于是有小三、小四……小十七。你若进去,论资排辈,应为小十八。但我可以开恩,让你直接升为小三。”药善铁一脸贼笑。 阿笛忽然大笑:“从小我就听人说,最缺少什么的人,就最喜欢宣扬什么。最喜欢在众人面前宣扬女人多的人,那就是最不能吸引女人者!今天我总算见识了!你那主人不圆子据说还有妾室三百,快赶上当今天子了。但是个人都明白,普天之下,会有女人喜欢不圆子吗?” 药善铁脸色一变,显然被阿笛的这番话给激怒。他挥动判官笔,猛跳过来。 阿笛从马上翻身而下。千里马似乎心领神会,也朝旁边一闪。这样,左飞扬和阿笛都躲过了那判官笔的攻击范围。 在旁边一言不发的丁近言此时也使出镰刀。他自然是朝着左飞扬的方向奔去。 药善铁的力道奇猛,阿笛不敢用长笛硬接他的招数。他的十八路判官笔上下挥舞,竟然划出一道道剑气,不仅给自己罩出了一道无懈可击的屏障,同时也如同数百柄刀剑一起前移,显现出极大的攻击锋芒。阿笛摒住呼吸,连连后退。她拾起地上一根树枝,向前掷去,树枝被啪地一下给打飞,同时断成三截。 丁近言的镰刀也凶狠无比。左飞扬从马上跃下,牢记只守不攻的嘱咐,只是拿起马鞭,到处躲避。镰刀伴随着风声飞速砍来,喀嚓,路旁的几根巨大树枝被它给削断,断口极其平整。左飞扬心道,如果用马鞭去接那镰刀,这马鞭也多半不保。 善铁近严虽然攻势如潮,但左飞扬和阿笛二人的防守躲闪功夫也不错,数百招之后,二人也安然无恙。 药善铁忽然停了下来,满头大汗,叫道:“你们这两个小毛贼,躲躲闪闪,怎是英雄?” 阿笛莞尔一笑:“谁说我是英雄啦?我可不像你们那样打肿脸称英雄。” 药善铁又挥动判官笔。但这次纯是守势,他借助判官笔构成的防护屏障,缓慢移动步伐,向左飞扬所在方位靠去。 阿笛心中暗叫不好。这两人现在想采取各个击破,集中精力对付左飞扬一人。连忙把手往腰间一伸,甩出长长的丝带,欲缠住药善铁的判官笔。药善铁的力气甚猛,丝带缠在上面,竟然无法拉回。阿笛只好摇晃两下,松开判官笔,把那丝带收回。药善铁趁机大力一跳,已经到达左飞扬身旁。 “赶紧收拾这小子,圣公点名要清理的是这小子。那丫头以后再说!”药善铁对丁近言道。 “哼哼,他躲的功夫倒不错。小小的挨踢派,看来还是有点来头的。说不定这小子身上真的藏有……”丁近言说到这里,药善铁对他使了一个颜色,他便突然打住不说。 判官笔和镰刀从两个方向,夹击左飞扬。左飞扬见形势不妙,急于避开,但发现前后左右竟然都被封住了。 善铁近严,合力出击,天下英雄,莫不闻之变色! 阿笛在旁焦急如焚,她深知左飞扬即使防守再好,也无法对付善铁近严联合夹击。眼下并没有办法直接拯救左飞扬。现在她虽可以在背后对二人中的任何一人进行致命一击,但这样的话,左飞扬必然也已倒在了敌人的武器之下。 就在此时,千里马冲向判官笔和镰刀组成的攻击圈,直奔左飞扬所在之处。对于这突然出现的庞然大物,药善铁和丁近言都吃了一惊,攻势放缓。千里马长嘶一声,左飞扬会意,急忙拉住马的缰绳,让它把自己带出当前所处危险境地。出来之后,千里马的身上多了两条伤痕,鲜血直流,可见受伤不轻。 机不可失。阿笛又甩出长长的丝巾,丝巾头部卷住的是自己的长笛,长笛的一端竟然伸出精钢所制的刀刃,刀刃直劈药善铁咽喉。药善铁慌忙之间收住判官笔去迎击,但那带刃长笛却又变换方向,去打他的腿部。判官笔又不得不赶紧下移,但这么一出,他身上的破绽开始显现出来。 丁近言见势不妙,赶紧挥动镰刀,欲斩断那丝带。阿笛在镰刀上来之前,把丝带往回收。药善铁大喜,连忙收笔反攻。岂料在丝带还未收回之时,另外一条丝带却已飞出,猛地把他手中的判官笔给卷了过去。被卷走的判官笔迅速变换方向,笔直地扎入到药善铁的咽喉之中。 药善铁瞪大眼睛,吃惊地盯着阿笛,至死还不相信她身上竟然有两条能够致人死地的丝带,也不相信自己会这样中招。一股鲜血从他咽喉部缓缓流出。一代枭雄,用此笔杀人无数,也封住了无数对不圆子不满的人的嘴,到头来竟然也死在自己这笔之下。 丁近言手中的镰刀也在空中停了下来。对于同伴遭受的突然一袭,他也深感意外至极。如今自己落单,胜算便少了许多,更不敢贸然行事。他不动,左飞扬和阿笛也不再动。过了片刻,他只嘟哝了一句话:“怎么会有两条?” 阿笛轻轻一跳,避开了丁近言的镰刀,冷冷道:“你是不是也想再拿一把镰刀在手?手持多兵器,若不能协调操纵之,其效果远逊于持单兵器。但如果能收发自如,则可发挥奇效,此之谓并行之功夫。想必你是作威作福惯了,以为靠几十年的老功夫便能横行江湖。岂料你虽杀人过多,但招术早已被人背得滚瓜烂熟,优点缺点,大家都熟悉不过。没有万无一失的绝招,假以时日,总会找到破绽。今日便是例子。” 丁近言这个杀人魔鬼此时一声不吭。他的搭档药善铁倒在地上,已经听不到这话了。 阿笛对着药善铁叹道:“归根到底还是你沉不住气,只要紧张动怒,便有可趁之机了。” 丁近言紧紧握住镰刀,站在一旁,不再动手。阿笛也不再正视他,但仍然和他保持足够距离,防止对方突然偷袭。她用手轻轻抚摸千里马:“都说你是最聪明最勇敢的马。今日你又建奇功,但却受了伤,叫人好生心疼。” 左飞扬是最过意不去之人。他的这条命,可以说是千里马给救回来的。想不到牲畜竟然如此通人性。他似有眼泪滴下,阿笛瞧见了,柔声说:“问题不大,它只是受了轻伤。” 片刻之后,丁近言实在忍耐不住,便对阿笛说道:“姑娘,我与你无怨无仇,也不像那老头儿那么好色,咱们就井水不犯河水,如何?这匹马我也不会动它一根毛发,只求你把旁边那小子交给我处理。” 阿笛哈哈大笑:“如果我是你,有朝一日,我也会对不圆子那老家伙说,我对你在京城中的八十栋别院不感兴趣,你的老婆我也不懂,但是否能把皇上给你的那玉质印章交给我处理处理,你猜不圆子会怎么说?” 丁近言道:“姑娘莫要说笑。我们能在此处守株待兔,等着你们,必定说明我们有特殊渠道打探江湖秘密,消息灵通。你和这小子的关系我也当然知道了。你和他并不熟悉,也就认识几天而已,若说你和他有什么真感情,药善铁那老家伙也许相信,我可不信这一套。老实说来,他对你有何用处?莫非……莫非……你也想……”说到此处,他的脸上露出一种奇怪的表情,阴笑不止。 阿笛在这时却突然出招,仍是那丝带卷着出刃长笛。丁近言挥动镰刀一挡,碰!两件至强兵器相撞在一起,各自弹了回去。 左飞扬此时也挥动马鞭,往前跳去,大叫:“你这人割人舌头,残忍无比,让人生不如死,今日我也算要为民除害!” 阿笛惊慌失措,大叫一声傻瓜,赶紧跃到前面,同时也出招。看似在攻击丁近言,实则在保护左飞扬。丁近言的镰刀已经向左飞扬挥去,但见阿笛上前,急忙往后退了几步,想必是药善铁倒下的细节历历在目,他仍心有忌惮。 “让你不要贸然出击,你怎么?”阿笛厉声对左飞扬道。 左飞扬有点茫然,但他瞧见了阿笛的担忧之情,深知丁近言是一个凶狠的角色,功力绝不在药善铁之下。 丁近言在一旁笑道:“割人舌头,其实非我本意。你知道人在江湖,也身不由己。但如若不出这残忍之招,怎能让人生畏惧之心呢?只有手段残忍了,才能让人放弃非分之想,不敢造次。小兄弟,如果你跟我走,我可以保证不杀你,深知从此不再干这割舌头的勾当!” 左飞扬摇头:“如果相信你,我就很傻很天真。” 就在此时,旁边闪出一道黑影,奔向千里马。千里马长嘶一声,那黑影又随即一闪,消失得无影无踪。 左飞扬和阿笛都大惊。丁近言也满脸诧异。 左飞扬急忙回到马旁,检查一番,道:“马没事,但我的行囊被偷走了!” 丁近言和阿笛都显出焦急之神色。 丁近言回头望望黑影的方向,赶紧道:“二位,今日不再与你们纠缠。今日之恩怨,改日再来算!”说完飞身一跳,也消失在黑暗当中。 阿笛问道:“行囊中可有重要东西?” 左飞扬摇头道:“主要就是我的衣物。同时又一封给工部军器局副使杨千盐的信。但信只当信物所用,丢掉了虽然有所麻烦,但并无大碍。” 阿笛又问道:“刚才你听了那丁近言的一番话,是不是怀疑我为什么处处护你,也有可疑之处?” 左飞扬道:“他似乎是话中有话。但我并不怀疑你。” 阿笛叹道:“唉。如果你身上藏有什么重要东西,我随时可取,何须费如此多的精力,陪伴着你,保护着你!不过刚才那黑影趁我们未注意之时,偷你行囊,如今我还真的怀疑你身上的确有什么秘密。这也许是那么多人要刺杀你的真正原因。不圆子对你下手,也许和此有关。” 左飞扬无奈道:“我从小到大,普通至极,既非官员之后代,家中亦无过多钱财,所在的挨踢派也是地方小派,岂有任何秘密?直到现在,我仍然是在云里雾里。” 阿笛道:“那我们得早点到达徐州。那是江湖人士汇聚指出,在那也许能够知晓更多,所有事情缘由,便会水落石出。但千里马受伤,行程或许会略微耽搁一下。” 阿笛从马腹下方的一个行囊里面取出一瓶膏药,给千里马受伤之处涂上,随后道:“它的伤虽浅,但毕竟影响行动。这里刚才发生了一场恶战,我们不能待在原地休息。牵马前行两里路,找个农居,先行歇息吧。”
5.创建机器人。我们已经创建了精灵的基本模型:ActionSprite。我们可以重用它来创建游戏中电脑控制的角色。新建Robot类,派生自ActionSprite类,增加如下方法:
1 2 CREATE_FUNC(Robot); bool init(); 打开 Robot.cpp 文件, init 函数代码如下: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 bool Robot::init() { bool bRet = false; do { CC_BREAK_IF(!
现状的描述 进化后思维与固化后思维的矛盾
交往对象对个人的影响
男女对事物认识水平
情商与脾气
固有思维与应对突发事情
惰性生活方式的探讨
承担选择的负面效应
情侣间信任关系的建立与维系
情侣间的激励作用
固化思维与固执的区别
自己的理解 原始思维的阐述
进化后的思维的阐述
固化的思维的阐述
个人性格中软与硬的部分
对自己正确的认识
人的浮夸与攀比心理
对现实状况的正确认识
我对围城的理解
工作环境对人的处事,工作态度的影响
生活环境对人的处事,生活态度的影响
工作状态对生活的影响
生活与工作的关系
人的认知水平的深度解析
自我约束与对他人的要求
爱情的理解
婚姻的理解
爱情与婚姻的关系
对于生活方式与习惯的正确认识
家庭教育对个人习惯的养成
如何看到自己的缺点
虚心接受与固步自封
如何发扬自身的优点
如何用积极的心态感染周围的人
未来的憧憬 在爱情中的成长与进步
和谐关系的逐渐形成
问题与矛盾
成熟健康的心理
他人对自己处事方式的影响
进取心与生活激情
做一个正能量的人
坚持自己与听信他人
连接SVN报如下错误。
Unable to connect to a repository at URL 禁止访问 (forbidden)
1. 右键点击本地副本,TortoiseSVN -> Settings -> Saved Data,
2. 顺序点击所有的“Clear”按钮,把本地缓存都清除了,点击“确定”;
3. 再重新checkout。即可。
首先,libssh2.lib的这个库一定要有(下载地址提供:http://download.csdn.net/detail/wyc6668205/5651661)
其次,介绍一下libssh2的官网:www.libssh2.org;虽然这个网站里面内容是全英文的,我想所有的计算机从事者都能看懂这里面写的内容,这里面提供了很多例子,比如FTP的,shell命令的等等,我在这里介绍一下shell命令的发送和接收返回数据。
example里有个文件名叫exec.c 这个文件是实现shell命令的一个例子
/* * Sample showing how to use libssh2 to execute a command remotely. * * The sample code has fixed values for host name, user name, password * and command to run. * * Run it like this: * * $ ./ssh2_exec 127.0.0.1 user password "uptime" * */ #include "libssh2_config.h" #include <libssh2.h> #ifdef HAVE_WINSOCK2_H #include <winsock2.h> #endif #ifdef HAVE_SYS_SOCKET_H #include <sys/socket.h> #endif #ifdef HAVE_NETINET_IN_H #include <netinet/in.