c++
linkyou
测试开发熟练工;曾就职浙大,申普,金蝶,阿里软件,阿里云计算
展开
-
linux磁盘管理常用命令
df命令功能:检查文件系统的磁盘空间占用情况。可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。语法:df [选项]说明:df命令可显示所有文件系统对i节点和磁盘块的使用情况。该命令各个选项的含义如下:-a 显示所有文件系统的磁盘使用情况,包括0块(block)的文件系统,如/proc文件系统。-k 以k字节为单位显示。-i 显示i节点信息,而不是磁盘原创 2009-07-13 13:35:00 · 1069 阅读 · 0 评论 -
linux C++ 类成员函数中创建线程,且能访问类中其他成员变量
<br />最近刚开始玩C++,遇到一些基础问题,下面就是其中之一,将源代码公布一下方便大家查找。<br />linux C++ 类成员函数中创建线程,且能访问类中其他成员变量.<br />重点:将线程执行函数声明为非类成员函数,通过参数*arg 将this指针传入线程函数体中。<br /> <br />test.h<br /> <br />#ifndef TEST_H<br />#define TEST_H<br /><br />class test<br />{<br />public:原创 2011-05-04 12:49:00 · 3797 阅读 · 1 评论 -
gdb调试运行程序带参数(调用动态链接库),debug过程记录
1.gdb (运行程序名称)例如gdb cbenchmark2.设置运行参数set args -c 1 -n 1 -F ./libaliww.so -l 13.如果是多线程程序set follow-fork-mode child4.设置断点,如果代码是动态链接库.so中的代码系统会提示如提示1b CWWSimulator.cpp:530提示1:No source file named CWWSimulator.cpp.Make breakpoint pending on future shared li原创 2011-04-27 18:18:00 · 2946 阅读 · 0 评论 -
如何使core dump生效之unlimit及gdb相关命令(C++)
<br />ulimit -a<br />查看当前ulimit状况<br />ulimit -c unlimited<br />设置core不限制size<br />ulimit -a<br />会看到core file size限制如下unlimited<br />core file size (blocks, -c) unlimited<br />data seg size (kbytes, -d) unlimited<br />scheduling pri原创 2011-04-27 18:12:00 · 2453 阅读 · 0 评论 -
c++ python交互之boost.python 简集之序列化(pickle)
<br />c++代码:src.cpp<br />#include <string><br />struct World<br />{<br /> World(std::string a_msg) : msg(a_msg) {}<br /> std::string greet() const { return msg; }<br /> std::string msg;<br />};<br /><br />python转换代码:src4py.cpp<br />#in原创 2011-04-14 19:13:00 · 2467 阅读 · 3 评论 -
linux 下写socket遭遇broken pipe(SIGPIPE C++)
原代码片段如下,程序在第08行报错,但是try,,,catch无法抓到错误,经过debug分析是由于收到broken pipe的信号。看来程序此时被终止了;那么我期望不被终止,该怎么做了。01 int sendLen = 0;02 int totalLen = 0;03 int packSize = pack.size();04 while(packSize != totalLen)05 {06原创 2011-05-26 16:57:00 · 6924 阅读 · 3 评论 -
linux 下python 调用C++ .so如何debug c++代码
<br /> <br />1. 在python入口的函数写如下代码<br />time.sleep(50) #休眠若干秒,休眠的时间根据你操作速度定。为了有足够的时间启动gdb,并且attach到python的进程<br />为了防止操作过慢,程序没等gdb起来就已经跑远了,最好把要debug的代码行,另外记录到文本中<br />如:<br />b cmdswitch.cpp:321 #要debug的行数<br /> <br />2.先查看一下python的进程号<br />ps -ef|grep pyth原创 2011-05-12 18:52:00 · 2519 阅读 · 0 评论 -
cppcheck使用简明手册
1. 安装cppcheck http://cppcheck.sf.net/2. 安装Pygments (http://pypi.python.org/pypi/Pygments),下载Pygments-1.3.1-py2.5.egg (md5),安装python的egg相当于安装java的jar.用easy_install Pygments-1.3.1-py2.5.egg会比较方便3. 在安装第二步之前,确认你的机器安装了python,和easy_install.通常p原创 2010-11-23 20:28:00 · 4429 阅读 · 0 评论 -
利用jsoncpp将json字符串转换为Vector
在API测试过程中经常会遇到传入参数为复杂类型,一般情况下在python下,习惯用字典来表示复杂类型。但是c++对字符串的处理是比较弱智的,一般c++里边会用vector来存储复杂类型,那么就存在转换的问题,下面小段代码记录了将字符串转换为Vector的过程待转换的字符串如下:const char * jsongroupinfo="[{/"groupId/" :946838524,/"groupname/" :/"bababa/", /"mask/":1,/"parentid/":946755072}]";原创 2011-01-11 15:05:00 · 3390 阅读 · 1 评论 -
c++两个常用函数:1.二进制字符串2 hex(十六进制)。2. 栈变量字符串2堆变量
二进制字符串2 hexstring get_b2hex(const char * source,int len){ std::string strHexPack; for (int i = 0; i { unsigned char c = source[i]; unsigned int nIntVal = c; char hex_buf[10] = {0}; sprintf(hex_buf, "%02x", nIntVal); strHexPack += hex_buf; }原创 2010-09-28 17:04:00 · 2800 阅读 · 3 评论 -
python+opencv之视频人脸识别
Python代码 import sys from CVtypes import cv def detect(image): image_size = cv.GetSize(image) # create grayscale version grayscale = cv.CreateImage(image_size, 8, 1) cv.CvtColor(image, grayscale, cv.BGR2GRAY) # creat转载 2010-06-30 10:03:00 · 5119 阅读 · 0 评论 -
一个json string和泛型对象转换的经典实例
花了我三个多小时(java还需要努力啊);只有我自己看得懂,哈哈!!!!/**elbert.chenh寫於2010年1月5日晚 * 实现如下功能 * 1.将用户传递的个性化的jsonstr队列转换为标准化的统一的jsonstr队列 * 如队列中的元素{/"taskId/":/"t01/",/"sceneId/":/"s01/",/"caseId/":/"cs01/",/"SYNO原创 2010-01-06 11:23:00 · 2487 阅读 · 2 评论 -
如何使用lsp的hook技术解决TCP链接超时测试场景的模拟
问题:在测试网络层链接建立工具的时候,遇到这样的测试用例:需要模拟不同链接按预定的链接先后次序建立,如TCP链接先于UDP链接或者UDP链接先于TCP链接。查用了很多防火墙,都没有提供类似的功能。后来我们使用了Winsock LSP 开发了小工具解决了这个问题!关于WinSock LSP网上有详细的例子和讲解如下:LSP :分层服务提供者,顾名思义是某种服务的提供者且具有分层的特性,它转载 2009-12-14 15:05:00 · 3767 阅读 · 1 评论 -
Mysql对数据库访问IP授权问题
mysql 数据库访问权限设置,将这个数据库的远程访问及修改权根赋予到这个局域网的某一IP上: GRANT ALL PRIVILEGES ON *.* TO monty@123.45.67.89 IDENTIFIED BY something WITH GRANT OPTION; monty 是用户名 123.45.67.89是ip something是密码 WIT原创 2009-06-26 11:34:00 · 2178 阅读 · 0 评论 -
经过证实的下载文件java实现方法
//会弹出对话框让用户自己选择保存路径 public static HttpServletResponse download(String path, HttpServletResponse response) { try { // path是指欲下载的文件的路径。 File file = new File(path); // 取得文件名原创 2009-06-25 14:29:00 · 877 阅读 · 0 评论 -
经过验证的python发送邮件程序
#由于今年要开展邮件测试,所以研究一下邮件的东东,顺便学习一下python,始终认为解释性语言是自动化测试的利器,但是由于一般脚本语言都存在面向对象不易的缺陷,不容易在大的项目中使用,根据初步学习python具备良好的面向对象特性,而且根据学习,发现这门语言的确相当好玩,很吸引我,特抄录了一段代码验证了一下,测试通过,发帖如下。import emailimport mimetypesf原创 2009-08-21 11:53:00 · 2210 阅读 · 0 评论 -
Pro*C 程序概述和结构说明
一 Pro*C 程序概述:1.什么是Pro*C程序在ORACLE数据库管理和系统中, 有三种访问数据库的方法;(1) 用SQL*Plus, 它有SQL命令以交互的应用程序访问数据库;(2) 用第四代语言应用开发工具开发的应用程序访问数据库,这些工具有SQL*Froms,QL*Reportwriter,SQL*Menu等;(3) 利用在第三代语言内嵌入的SQL语言或ORACLE库函数调用来访问。Pr转载 2009-07-22 13:53:00 · 1133 阅读 · 0 评论 -
搜索引擎之索引建立原理
我们假设有这样一张商业信息数据表,我们用什么样的算法和结构(索引技术)可以快速方便实现搜索功能呢?SidSubjectTypePriceidDescriptionPostTime0Sell appleSale5010转载 2009-07-22 14:05:00 · 1737 阅读 · 0 评论 -
C++ python 交互之 python.dict to c++ map
代码片段如下,typedef map smap;//要转换的目的map转换函数string req_update_userprofile_pack_data2(std::string workkey,PyObject *dict_user){ Py_ssize_t i, j; i = 0; PyObject *key; PyObject *value; smap m_profilelist; while (PyDict_Next(dict_原创 2011-05-06 20:49:00 · 4026 阅读 · 1 评论