自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Dreamer的博客

一箪食一瓢饮居陋巷

  • 博客(27)
  • 资源 (10)
  • 收藏
  • 关注

原创 sed单引号使用

首先,我保证下面经过实践证明争取的试验待处理文件: test.file 内容:'Inherent'脚本: sed_single_quote.sh#!/bin/bashfile_array="test.file"for file_name in ${file_array}do    echo ${file_name}    sed -i 's/\('\

2017-12-01 19:36:15 2463

原创 ie不支持hidden解决

解决

2017-11-28 14:48:08 2977

原创 七夕告白

html>html lang="en">head> meta charset="utf-8"> title>For my Girltitle> style type="text/css"> #divAdvert { position: absolute; font: 60px Arial; top: 4px

2017-08-27 19:01:30 329

原创 js对象名称

有时,我们希望查看js对象名称,此时可以使用object.constructor.name来实现,比如:htmllang="en">title>Exampletitle>body>h1id="heading1">My Headingh1>pid="paragraph1">This is some text in a paragraphp>

2017-08-23 21:43:15 1180

原创 根据进程名获取进程id

原理: linux操作系统中有一个名为/proc的虚拟文件系统,其中记录着进程和用户的相关信息,其中/proc/N (注:N表示数字)目录表示进程ip号为N的进程信息,就是这里找到我们要找的进程信息,其中/proc/N/status记录了进程状态信息,包含进程名等,比如: root@proc # cat /proc/3544/status Name: lighttpd

2017-08-13 09:31:23 1491

原创 使用inet_pton验证字符串是否是合法的ipv4或ipv6地址

inet_pton是用来讲ipv4和ipv6地址转换成二进制形式 inet_pton()函数原型: #include <arpa/inet.h> int inet_pton(int af, const char *src, void *dst);返回值: 返回值为1 表示 函数执行成功 返回值为0 表示 对指定的协议来说 网络地址不是有效的的 返回值为-1 表示

2017-06-02 00:41:00 6457

原创 connect调用失败后需关闭描述符

connect函数原型       #include        int connect(int socket, const struct sockaddr *address,              socklen_t address_len);查看connect的帮助文档,用法中有这么一段APPLICATION USAGE

2017-06-02 00:29:36 422

原创 验证是否符合IPv4点分十进制表达的正则表达式

由于工作需要,一段字符是否完全符合IPv4点分十进制表达,下面是验证可以按预期工作的正则表达式,分享出来给大家,效率不一定最高但至少能用/(([1-9]|[1-9]\d|1\d\d|2[0-5][0-5])\b\.)(([0-9]|[1-9]\d|1\d\d|2[0-5][0-5])\b\.){2}(([1-9]|[1-9]\d|1\d\d|2[0-5][0-5])\b)/解释:

2017-04-26 22:59:20 1332

原创 哪种方法效率更高或更可读

来由:阅读lighttpd源码时,发现lighttpd申请特定倍数内存时,使用的方法较为晦涩,于是,就想对比自己以前在阅读git源码时学到的方法,感觉git的方法更胜一筹 lighttpd方法:#define BUFFER_PIECE_SIZE 64int get_entry_size(int size){ int ret_size = size; if(size <= 0)

2017-03-06 22:42:57 240

原创 x86_32栈的调用结构

下面将通过一段代码分析x86_32栈的使用方法,程序运行后不停的重新调用main函数重新运行。原理: In x86_32, When one function named ‘function_A’ call another function named ‘function_B’ the function_B’s stack look like below: Param

2017-01-15 16:03:32 911

翻译 函数工作原理

*函数由多个部分组成:*1.函数名 函数名是函数开始地址的一个标签2.参数 函数的参数是给函数处理的资料,是函数中的变量。比如,在数学中,有个sine函数。如果你想让计算机计算2的正弦值,那么你可以调用函数名为sine的函数,以2为参数。另外,函数的参数可以有不止一个,甚至可以没有3.本地变量4.静态变量 静态变量是直到程序结束都一直有效的变量。函数内的静态变量对其他模

2016-12-31 13:28:13 1387 1

转载 链接时 库在命令行位置的影响

请看下面的Makefile文件 这是一个不一定好 但能正常工作的Makefile,但我曾困惑为什么下面的会编译出错 上面最本质的变化是库在可重定位文件(即.o文件)之前出现,慢慢的随着知识的对链接时符号解析规则的了解知道了其中的秘密: 在链接开始前,链接器会创建三个空集合E,U,D,其中E表示可重定位文件(.o文件 这个集合中的文件会被合并成可执行文件),U表示引用了但尚未定义

2016-10-22 10:50:51 262

原创 TCP状态流转图及对应的API

TCP为一个连接定义了11种状态(下面粗体字),分别是 连接建立前:CLOSED, LISTEN, SYN_SENT, SYN_SCVD 数据发送中: ESTABLISHED 关闭连接: 被动关闭 CLOSE_WAIT(接收到FIN) LAST_WAIT(发送FIN,等待其ACK) 主动关闭 FIN_WAIT_1(主动发送FIN) FIN_

2016-09-04 12:28:25 1859

原创 套接字学习之tcp连接的建立

已经看过很多遍的网络编程相关内容, 但一次偶然的面试总居然发现已经忘得七七八八甚至还不如刚出校门时,于是觉得不能再眼高手低了,需要重新拿起书本复习复习,所以就有了下面的博文,希望我能坚持学习,坚持努力。 tcp连接的建立总的来说就是一个跟电话系统类似的套路: 对于服务器: 1. 建立一个socket用于通信(类似listenfd = socket(AF_INET, SOCK_ST

2016-09-03 18:16:57 439

原创 mac地址自增(通用简易版)

上一篇关于mac地址自增的博文可行的必要条件是sizeof(long long) >= 6,这一次,我们使用更简洁但更浪费空间的方法(这是大自然最擅长的:浪费)。#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h>int main(void){ char mac[] = "00:0C:

2016-08-09 22:34:06 2907

原创 mac地址自增

mac地址又叫硬件地址,占用6个字节的空间,一般采用16进制并以冒号分割各个字节的方式表示。在32位的机器中,一般long型占4个字节,long long占8个字节,因此,我们可以将mac地址存储在long long的内存空间中,然后对其做加一运算。代码如下:#include <stdio.h>#include <string.h>#include <stdlib.h>#include <u

2016-08-08 23:13:19 2378

原创 dp学习之AvoidRoads解法二(算法优化)

在上一篇AvoidRoads解法中,虽然能得到正确的答案但存在很大的瑕疵,比如需要分三种情况: 第一种 x>0,y=0 第二种 x=0,y>0 第三种 x>0,y>0 程序分完这三种情况后显得很长,因此有必要进行优化。 优化源代码如下(c++):#include <iostream>#include <vector>#include <cstdio>#include <string

2016-04-16 21:47:08 364

原创 dp学习之AvoidRoads解法

这是来自Topcoder的一道动态规划有关的题目,原文如下: https://community.topcoder.com/stat?c=problem_statement&pm=1889&rd=4709&rm=&cr=152347本题大意是在直角坐标系中,从(0,0)到(width, height)有几种不同的走法,其中路径长必须为width+height,另外,还有一些相邻点之间不可达的路径。

2016-04-16 17:58:42 366

原创 dp学习之BadNeighbors解法二(算法优化)

上一篇文章中,使用动态规划求解了BadNeighbors问题,虽然那种解法可以解决问题但存在一些可以优化的地方,这一篇文章对上一种解法进行优化。 我们依然定义数组为x0,x1….xn-1其中x0和xn-1依然不相连 上一篇问题只中定义dp[i]为包含xi的x0,x1,…xi的最大值。这次我们改变定义方式定义dp[i]为x0,x1,…xi的最大值(即dp[i]不是一定要包含xi),因而状态转移方程

2016-04-04 12:42:16 630

原创 dp学习之BadNeighbors解法

这是来自Topcoder的一道动态规划有关的题目,原文如下 The old song declares “Go ahead and hate your neighbor”, and the residents of Onetinville have taken those words to heart. Every resident hates his next-door neighbor

2016-04-04 11:53:45 1018

转载 mknod命令 linux

个人觉得linux的软件设计思想异常强大,比如把所有的设备都当做文件来处理,大大简化了程序员的负担,向提出这个思想的大神s致敬!!先来看看linux系统中设备管理的基本知识:      我们的linux操作系统跟外部设备(如磁盘、光盘等)的通信都是通过设备文件进行的,应用程序可以打开、关闭、读写这些设备文件,从而对设备进行读写,这种操作就像读写普通的文件一样easy。linux为不同种类的

2015-09-08 23:07:48 381

原创 使用select唤醒睡眠中的线程

有时我们需要使用多线程每隔一定时间自动去完成一些特定的工作,但有时我们也需要线程在某种情况发生时,从睡眠中唤醒并立即去完成工作,这时sleep就显得无能为力了,但这正是select登场的时候。 这里我们就不介绍select的用法了,如果您还不知道select怎么用的,您可以去找本书看看,悄悄的告诉你,可以去《unix网络编程卷1:套接字联网api》这本上取经。select原型: int

2015-08-16 18:12:41 2950 1

原创 带超时的system

int _system_timeout(const char *cmdstring, int timeout);

2015-08-01 13:13:23 2488

原创 linux冷知识之查看可执行文件依赖的动态库[待补充]

使用ldd命令如可执行文件为a.out,则执行ldd a.out

2015-07-04 17:12:52 749

原创 linux冷知识之打开防火墙的特定端口[待完善]

/etc/sysconfig/iptables

2015-07-03 09:30:06 316

转载 常量指针与指针常量的区别(转帖)

三个名词虽然非常绕嘴,不过说的非常准确。用中国话的语义分析就可以很方便地把三个概念区分开。一) 常量指针。常量是形容词,指针是名词,以指针为中心的一个偏正结构短语。这样看,常量指针本质是指针,常量修饰它,表示这个指针乃是一个指向常量的指针(变量)。指针指向的对象是常量,那么这个对象不能被更改。在C/C++中,常量指针是这样声明的:1)const int *p;2)int

2015-06-25 17:48:35 310

原创 mysql数据库基础总结

mysql数据库基础总结

2015-06-22 12:06:38 947

黑客与画家

刚看了第一章,说的很精辟,我觉得可能是一本编程的心灵鸡汤.pdf

2015-12-07

UNIX网络编程第三版

UNIX网络编程是一本很好的学习类unix的好书,值得认真阅读

2015-10-14

Vim实用技巧

vim是最好用的编辑器之一,如果没有积分可以发邮件索取

2015-10-14

MySQL技术内幕(第4版)

mysql是成功的开源数据库,也是当下网络公司应用最多的数据库,这本书也深入浅出的讲解了mysql技术,我本人就从中受益,也值得你认真阅读,如果没有积分可以发邮件至[email protected]索取

2015-10-11

Linux C编程一站式学习6.14--宋劲衫

Linux C编程一站式学习是linux系统编程入门的极好书籍,值得认真阅读,如果没有积分可以发邮件至[email protected]索取

2015-10-11

UNIX网络编程卷二进程间通信.rar

UNIX网络编程卷二进程间通信是一本很好的学习进程间通信的很好的教材,值得认真阅读,如果没有积分可以发邮件至[email protected]索取

2015-10-10

Linux系统编程.zip

Linux系统编程是一本很好的学习linux的数据,值得认真阅读,如果没有积分可以发邮件至[email protected]索取

2015-10-10

Linux设备驱动程序

linux驱动学习的圣经,本书以添加书签并且是清晰的影印版

2015-09-08

空空如也

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

TA关注的人

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