RodYang

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

10 2013 档案

摘要:系统编程中一个重要的方面就是有效地处理与内存相关的问题。你的工作越接近系统,你就需要面对越多的内存问题。有时这些问题非常琐碎,而更多时候它会演变成一个调试内存问题的恶梦。所以,在实践中会用到很多工具来调试内存问题。在本文中,我们将讨论最流行的开源内存管理框架 VALGRIND。摘自 Valgrind.org:Valgrind是用于构建动态分析工具的探测框架。它包括一个工具集,每个工具执行某种类型的调试、分析或类似的任务,以帮助完善你的程序。Valgrind的架构是模块化的,所以可以容易地创建新的工具而又不会扰乱现有的结构。许多有用的工具被作为标准而提供。Memcheck是一个内存错误检测器。它 阅读全文
posted @ 2013-10-27 14:21 RodYang 阅读(479) 评论(0) 推荐(0)

摘要:用C/C++开发其中最令人头疼的一个问题就是内存管理,有时候为了查找一个内存泄漏或者一个内存访问越界,需要要花上好几天时间,如果有一款工具能够帮助我们做这件事情就好了,valgrind正好就是这样的一款工具。Valgrind是一款基于模拟linux下的程序调试器和剖析器的软件套件,可以运行于x86, amd64和ppc32架构上。valgrind包含一个核心,它提供一个虚拟的CPU运行程序,还有一系列的工具,它们完成调试,剖析和一些类似的任务。valgrind是高度模块化的,所以开发人员或者用户可以给它添加新的工具而不会损坏己有的结构。valgrind的官方网址是:http://valgrin 阅读全文
posted @ 2013-10-26 21:24 RodYang 阅读(441) 评论(0) 推荐(0)

摘要:在linux下些C语言程序,最大的问题就是没有一个好的编程IDE,当然想kdevelop等工具都相当的强大,但我还是习惯使用kdevelop工具,由于没有一个习惯的编程IDE,内存检测也就成了在linux下编写程序的一个大问题。 是不是说没有一种内存检查工具能够在linux使用呢,也不是,像valgrind工具还是相当不错的。他的下载地址是http://valgrind.org/downloads/current.html#current下载一个valgrind 3.2.3 (tar.bz2) 工具,按照里面的README提示,安装后就可以使用这个工具来检测内存泄露和内存越界等。这是一个没有. 阅读全文
posted @ 2013-10-26 20:52 RodYang 阅读(651) 评论(0) 推荐(0)

摘要:C++的XML编程经验――LIBXML2库使用指南写这篇文章的原因有如下几点:1)C++标准库中没有操作XML的方法,用C++操作XML文件必须熟悉一种函数库,LIBXML2是其中一种很优秀的XML库,而且它同时支持多种编程语言;2)LIBXML2库的Tutorial写得不太好,尤其是编码转换的部分,不适用于中文编码的转换;3)网上的大多数关于Libxml2的介绍仅仅是翻译了自带的资料,没有详细介绍如何在windows平台下进行编程,更很少提到如何解决中文问题。基于以上几点原因,决定写一个在Windows平台下,使用C/C++语言,应用LibXml2库来进行xml文档操作,同时使用ICONV库 阅读全文
posted @ 2013-10-21 04:56 RodYang 阅读(450) 评论(0) 推荐(0)

摘要:这里主要讲述libxml2在linux下的使用。(以下内容除了linux下的安装步骤是自己写的,其余均出自http://www.blogjava.net/wxb_nudt/archive/2007/11/28/161340.html,由于该篇文章讲解的非常详细,我也没必要重写一遍了。如果该篇文章早出些时候,早期开发我也不会走很多弯路了。虽然在该篇文章出现之前我已经对libxml2较熟悉了并开发完毕,但为了备忘,现在将该篇文章作为收藏之用。在此再次感谢这篇文章的大侠为大家整理了这篇文章^_^)1. 下载与安装LIBXML2Libxml2是一个C语言的XML程序库,可以简单方便的提供对XML文档的 阅读全文
posted @ 2013-10-16 17:08 RodYang 阅读(666) 评论(0) 推荐(0)

摘要:Linux下载工具Curl也是Linux下不错的命令行下载工具,小巧、高速,唯一的缺点是不支持多线程下载。以下是他的安装和功能。安装$ tar zxvf curl-7.14.0.tar.gz $ cd curl-7.14.0/ $ ./configure $ make $ make test $ make install参数详情参数:描述-M/--manual显示全手动-n/--netrc从netrc文件中读取用户名和密码--netrc-optional使用 .netrc 或者 URL来覆盖-n--ntlm使用 HTTP NTLM 身份验证-N/--no-buffer禁用缓冲输出-o... 阅读全文
posted @ 2013-10-11 14:18 RodYang 阅读(1023) 评论(0) 推荐(0)

摘要:url为http://mywebsite.com/index.php?a=1&b=2&c=3web形式下访问url地址,使用$_GET是可以获取到所有的参数curl-shttp://mywebsite.com/index.php?a=1&b=2&c=3然而在linux下,上面的例子$_GET只能获取到参数a由于url中有&其他参数获取不到,在linux系统中&会使进程系统后台运行必须对&进行下转义才能$_GET获取到所有参数curl-shttp://mywebsite.com/index.php?a=1\&b=2\&c=3 阅读全文
posted @ 2013-10-11 14:14 RodYang 阅读(23693) 评论(1) 推荐(4)

摘要:在Linux中使用curl命令时,偶尔会遇到一些URL跳转到新的URL,即HTTP中的3XX(redirection,重定向)。$curl -s -I $URL > log这时在返回的报文中,有Location字段标明了新的URL。$cat logHTTP/1.1 302 FoundExpires: -1Cache-Control: private, max-age=0Pragma: no-cacheLocation: http://182.118.2.11/youku/5571865A52945820CFCE162719/03000811074CDDB614769602996C2442 阅读全文
posted @ 2013-10-10 15:09 RodYang 阅读(7133) 评论(0) 推荐(0)

摘要:linux下的curl,有着非同一般的魔力,有人称它为下载工具,我更倾向于叫它“文件传输工具”因为它好像无所不能。从常见的FTP, HTTP, TELNET,等协议,还支持代理服务器,cookies,下载以及上传文件,curl 打印页面curlwww.baidu.comcurl 抓取一个页面,然后进行保存 -o (小写的英文字母 o )curl -x ip:port 指定代理curl -x 代理ip:端口 ,使用代理访问。curl -D cookies 保存cookie在本地。curlwww.baidu.com-o baidu.html -D baidu.txtcurlwww.baidu.co 阅读全文
posted @ 2013-10-09 15:28 RodYang 阅读(398) 评论(0) 推荐(0)

摘要:1、下载单个文件wget url+filename下载过程中同时可以看到四项信息已经下载的比例已经下载的大小当前下载的速度剩余的时间2、使用一个大写O做参数表示另存为wget -O save_name url这种方法适用于对应链接中没有显式文件名的情况。例如: wget -O xx.zip http://www.vim.org/scripts/download_script.php?src_id=7701再用不带-O参数的下载一次。ls -al总计 132drwxr-xr-x 2 root root4096 07-12 10:43 .drwxr-xr-x 4 root root4096 07- 阅读全文
posted @ 2013-10-09 11:49 RodYang 阅读(466) 评论(0) 推荐(0)

摘要:[root@TD18 tmp]#gcc -o 1 1.c -lnet[root@TD18 tmp]#./1please enter Host address11.11.11.11please enter local address:22.22.22.22wrote 126 byte TCP packet[root@TD18 tmp]#cat 1.c#include#include#include#includemain(void){ int c ; u_char *cp; libnet_t *l; libnet_ptag_t t; char *payload; u_char... 阅读全文
posted @ 2013-10-03 23:10 RodYang 阅读(1151) 评论(0) 推荐(0)