自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 资源 (14)
  • 收藏
  • 关注

原创 calloc或new分配的数组只能在第一个元素上释放

前几天写了一个开链hash表,结构如下:*node1 -->next-->next->...*node2 -->next-->...*node3 -->...*node4 -->next-->next->next-->...即首先创建一个Node数组,该数组由calloc分配,然后每个node又在后面跟着一个长链表。这样在最后释放的时候就出现了问题:我用递归的方

2012-04-24 11:14:05 1324

原创 sprintf 陷阱--Segmentation fault

有时为了构造特定的字符串,我们经常会使用sprintf函数。但是在linux中,该函数是不安全的。建议使用snprintf来指定写入的字节数。如下例所示:#include #include int main(int argc, char* argv[]){ char str[18]; int *pa = (int*)calloc(8, sizeof(int)); sprint

2012-04-24 11:02:14 5242 1

原创 SIGPIPE信号结束进程.

对一个对端已经关闭的socket调用两次write, 第二次将会生成SIGPIPE信号, 该信号默认结束进程。而这种行为一般不是我们希望的。在我的爬虫程序中就出现了这种问题,原因还不清楚。。为了进行后续处理,下列方法可以避免程序退出:struct sigaction sa;sa.sa_handler = SIG_IGN;sigaction( SIGPIPE, &sa, 0 );当然

2012-04-22 17:36:42 560

原创 在linux下创建静态链接库和编译链接

创建静态链接库: 如hashlib         g++ -c hash.c         ar -r libhashlib.a hash.o          # 注意archive文件的名字为libhashlib.a。否则在链接的时候会提示cannot find -lhashlib编译链接         在gcc/g++编译时,一定要注意各个文件的依赖顺序

2012-04-22 17:29:13 608

原创 Discriminative model vs Generative model

Discriminative model(判别模型): 对p(y|x)建模,只能计算在给定特征x情况下,目标y出现的概率。可以认为是对特征x的判断,故称为判别模型。一般都是监督训练,很难改造成无监督的。在分类问题上可能比generative model好一些。Generative model(生成模型): 对p(x|y)和p(y)建模,利用这个模型,我们可以模拟生成各个特征数据

2012-04-20 18:00:25 877

原创 python笔记(二)

1.  zip函数。可以把两个长度相同的list组合成一个相同长度的二元tuple,如 x =[1,2,3], y = [11,22,33],那么 t = zip(x, y) 得到t = ((1, 11), (2, 22), (3, 33)), 而 x, y = zip(*t)得到原来的x,y2.  sorted(iterable, key=None, reverse=False)函数,按照指

2012-04-15 18:20:31 708

转载 python学习笔记(一)

Python的模块名与类名是在两个不同的名字空间中,初学者很容易将其弄混淆。比如你在交互界面输入import HTMLParser,此时你其实并没有把类HTMLParser引入到当前名字空间中。type(HTMLParser)的结果是<type 'module'>,而type(HTMLParser.HTMLParser)的结果才是。所以如果你想引入HTMLParser这个类,一定要写fro

2012-04-15 17:58:51 13540 2

原创 多线程网络爬虫

最近用C在linux环境下搞了一个多线程网络爬虫,真是历经坎坷啊。现在把自己的教训总结一下:尽量不要使用静态数组,如 char path[200] 之类的。不要以为网址的path“应该”不长。有些网页在302重定向时,会提供一个特别长的path。这可能是由编程人员的疏忽导致。不管怎么样,如果path溢出,那定义在path之后的变量就全部被损坏了,从而导致不可预知的错误。检查calloc

2012-04-15 17:45:08 2864 1

流畅的python

流畅的Python 致力于帮助Python开发人员挖掘这门语言及相关程序库的优质特性,避免重复劳动,同时写出简洁、流畅、易读、易维护,并且具有地道Python风格的代码。流畅的Python 尤其深入探讨了Python语言的高级用法,涵盖数据结构、Python风格的对象、并行与并发,以及元编程等不同的方面。 流畅的Python 目录 第一部分 序幕 第 1 章 Python 数据模型 2 第二部分 数据结构 第 2 章 序列构成的数组 16 第 3 章 字典和集合 54 第 4 章 文本和字节序列 83 第三部分 把函数视作对象 第 5 章 一等函数 118 第 6 章 使用一等函数实现设计模式 141 第 7 章 函数装饰器和闭包 154 第四部分 面向对象惯用法 第 8 章 对象引用、可变性和垃圾回收 182 第 9 章 符合 Python 风格的对象 205 第 10 章 序列的修改、散列和切片 229 第 11 章 接口:从协议到抽象基类 256 第 12 章 继承的优缺点 289 第 13 章 正确重载运算符 307 第五部分 控制流程 第 14 章 可迭代的对象、迭代器和生成器 330 第 15 章 上下文管理器和 else 块 368 第 16 章 协程 381 第 17 章 使用期物处理并发 416 第 18 章 使用 asyncio 包处理并发 442 第六部分 元编程 第 19 章 动态属性和特性 482 第 20 章 属性描述符 514 第 21 章 类元编程 538

2017-06-17

iOS 编程入门(Swift)

对ios开发进行了比较细致的讲解,非常适合初学者。对xcode的各个操作进行了图文解释,并有代码可以下载

2015-12-01

angular js代码食谱(recipes with angular js)

对angular的很多基本特性进行了讲解,并有示例代码。全英文版带目录,如果仔细读可以很快上手angularjs

2015-12-01

Shell脚本专家指南-中英文

Ron Peters根据自己多年的shell编程经验编写,内容丰富实用。读完一定能很大提高你的shell编程能力和技巧!

2012-02-28

百度、腾讯、微软、谷歌笔经面经汇总

本人在各大论坛上搜集的关于百度、腾讯、微软、谷歌等IT公司近几年的笔试面试题目,看了感觉对自己确实有很大帮助。

2012-02-28

LINGO中文教程(案例+函数解释)

LINGO是一个利用线性规划和非线性规划来简洁地阐述、解决和分析复杂问题的简便工具。其特点是程序执行速度很快,易于输入、修改、求解和分析一个数学规划问题,因此LINGO在教育、科研和工业界得到了广泛应用。这本教程中有对lingo函数的详细解释以及丰富的案例。对初学者来说帮助很大。

2009-05-15

NIOS II常用函数

IO操作函数 函数原型:IORD(BASE, REGNUM) 输入参数:BASE为寄存器的基地址,REGNUM为寄存器的偏移量 函数说明:从基地址为BASE的设备中读取寄存器中偏移量为REGNUM的单元里面的值。寄存器的值在地址总线的范围之内。 返回值: - ………………

2009-05-15

Avalon 总线最新接口标准综述

随着片上系统(SOC)的快速发展,高速片上数据传输对片上总线的要求越来越高,各种片上总线标准不断升级,以应对片内日益膨胀的数据吞吐量要求。本文针对Altera 公司推出的Avalon 总线,将其最新版与早期版本进行比较,重点分析了新版标准的新特性,同时也对Avalon 总线的全系列进行了综述性的回顾。论文可以为研究valon 总线标准的学者以及SOC 总线选型设计者提供有价值的参考。

2009-05-15

Kapersky最新key(09年5月13)

Kapersky最新key(09年5月13),经测试可用

2009-05-15

DSP2812中文资料

全称:TMS320F2812原理与开发 编著:吕强 耿庆峰 陈圣俭 出版社:电子工业出版社

2009-05-15

空空如也

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

TA关注的人

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