- 博客(29)
- 收藏
- 关注
转载 自动生成Makefile的详细过程
为了编译一个简单的源文件main.c,需要自动生成一个makefile,以下是步骤:第一步:----------在/root/project/main目录下创建一个文件main.c,其内容如下:-------------------------------------------
2011-07-22 17:17:07
393
转载 ifconf和ifreq
用ioctl获得本地ip地址时要用到两个结构体ifconf和ifreq,它们对于大多数人来说都是比较陌生的,这里给大家一种比较简单的理解方法,当然只一种帮助理解的方法,在描述中可能会有一些地方与真实定义有所出入,仅供参考.首先先认识一下ifconf和ifreq://ifconf通
2011-07-22 17:15:33
462
转载 atexit函数的作用
很多时候我们需要在程序退出的时候做一些诸如释放资源的操作,但程序退出的方式有很多种,比如main()函数运行结束、在程序的某个地方用exit() 结束程序、用户通过Ctrl+C或Ctrl+break操作来终止程序等等,因此需要有一种与程序退出方式无关的方法来进行程序退出时的必要处
2011-07-22 17:14:13
2473
转载 Linux 信号signal处理机制
信号是Linux编程中非常重要的部分,本文将详细介绍信号机制的基本概念、Linux对信号机制的大致实现方法、如何使用信号,以及有关信号的几个系统调用。 信号机制是进程之间相互传递消息的一种方法,信号全称为软中断信号,也有人称作软中断。从它的命名可以看出,它的实质和使用很象中断。所
2011-07-22 17:10:40
566
转载 iptables用法详解(5)
开放内部主机可以 ssh 至外部的主机开放内部网路,可以 ssh 至外部主机。作法如下∶(预设 policy 为 DROP)###-----------------------------------------------------#### open 外部主机 ssh por
2011-07-22 17:05:02
405
转载 iptables用法详解(4)
iptables 使用时的样板在设定 iptables的封包过滤规则时,有几个样板的动作,若先熟悉它们,往后就可自行套用,依此类推,很快地,您就可以进入这个天地之中。观察目前的设定作法如下∶iptables -L -niptablse -t nat -L -n定义变数FW_IP=
2011-07-22 17:04:07
315
转载 ipchains 和 iptables 在语法上的主要的差异
1.在 ipchains 中,诸如 input 链,是使用小写的 chains 名,在 iptables中,要改用大写 INPUT。2.在 iptables 中,要指定规则是欲作用在那一个规则表上(使用 -t 来指定,如 -tnat),若不指定,则预设是作用在 filter 这个
2011-07-22 17:03:00
314
转载 iptables用法详解(3)
--uid-owner userid如果给出有效的user id,那么匹配它的进程产生的包。--gid-owner groupid如果给出有效的group id,那么匹配它的进程产生的包。--sid-owner seessionid根据给出的会话组匹配该进程产生的包。state此
2011-07-22 17:01:29
457
转载 iptables用法详解(2)
-s -source [!] address[/mask]指定源地址,可以是主机名、网络名和清楚的IP地址。mask说明可以是网络掩码或清楚的数字,在网络掩码的左边指定网络掩码左边"1"的个数,因此,mask值为24等于255.255.255.0。在指定地址前加上"!"说明指定了
2011-07-22 16:52:26
338
转载 iptables用法详解(1)
总览用iptables -ADC 来指定链的规则,-A添加-D删除-C 修改iptables - [RI] chain rule num rule-specification[option]用iptables - RI 通过规则的顺序指定iptables -D chain rul
2011-07-22 16:48:24
384
转载 linux定时器的使用
使用定时器的目的无非是为了周期性的执行某一任务,或者是到了一个指定时间去执行某一个任务。要达到这一目的,一般有两个常见的比较有效的方法。一个是用 linux内部的三个定时器,另一个是用sleep, usleep函数让进程睡眠一段时间,其实,还有一个方法,那就是用gettimeof
2011-07-22 16:47:14
261
转载 网络socket编程指南之二
sendto()和 recvfrom()函数 “这很不错啊”,你说,“但是你还没有讲无连接数据报套接字呢?” 没问题,现在我们开始这个内容。 既然数据报套接字不是连接到远程主机的,那么在我们发送一个包之 前需要什么信息呢? 不错,是目标地址!看看下面的: int sendto(i
2011-07-22 16:44:13
315
转载 网络socket编程指南之一
介绍 Socket 编程让你沮丧吗?从man pages中很难得到有用的信息吗?你想跟上时代去编Internet相关的程序,但是为你在调用connect() 前的bind() 的结构而不知所措?等等… 好在我已经将这些事完成了,我将和所有人共享我的知识了。如果你了解 C
2011-07-22 16:42:52
506
原创 Centos YUM源 中国科技大学镜像
备份: cd /etc/yum.repos.d/ mv CentOS-Base.repo CentOS-Base.bak.repo下载 CentOS-Base.repo: CentOS 4: 通过ipv4下载: wget http://mirrors.ustc.edu
2011-07-22 16:37:06
3027
转载 函数指针和指针函数
在程序运行中,函数代码是程序的算法指令部分,它们和数组一样也占用存储空间,都有相应的地址。可以使用指针变量指向数组的首地址,也可以使用指针变量指向函数代码的首地址,指向函数代码首地址的指针变量称为函数指针。1.函数指针定义函数类型(*指针变量名)(形参列表);“函数类型”说明函数
2011-07-22 16:28:28
232
原创 Windows下Python抓取网页中文乱码解决办法
# -*- coding: cp936 -*-import urllib2import sysreq = urllib2.Request("http://www.baidu.com/")res = urllib2.urlopen(req)html = res.read
2011-07-22 16:17:22
1159
原创 linux下安装USB无线网卡
1.dmesg | grep usb出现 new highspeed USB device using address X意思是有个高速USB设备使用第X个USB地址2.查看该设备cat/proc/bus/usb/devicesDev#=X Vendor=XXXXProdID=X
2011-07-22 16:14:07
1179
原创 python 使图片透明(transparent)
用到PIL(Python ImagingLibrary)import Imageimport ImageDrawim = Image.open("image.png")transparent_area = (50,80,100,200)transparent=100 #
2011-07-22 16:12:55
6120
原创 grub rescue 的修复
1.首先在网上下载一个Windows下修复mbr的软件(先到网上下载MbrFix.exe文件只有几KB大小)2.用win pe(毛桃)进入系统,在windowPE里把Windows下修复mbr的软件解压出来.3.运行CMD命令4.用cd命令切换到mbrfix 所在目录或者输入Mb
2011-07-22 15:48:23
395
原创 Linux直接启动到字符终端
1.CentOS修改 /etc/inittab把 id:5:initdefault:改成 id:3:initdefault: 2.Ubuntu修改/etc/default/grub把 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"改成 GRUB_CMDLINE_LINUX_DEFAULT="text"然后再运行一下update-grub命令,它会自动添加上tex
2011-06-17 09:01:00
666
原创 java读取xml
import java.io.*;import org.w3c.dom.*;import org.xml.sax.SAXException;import javax.xml.parsers.*;public class Xml { public static void main(String[] args) { DocumentBuilderFactory factory
2011-06-17 08:59:00
188
原创 一个集合的所有子集的Java代码实现
import java.io.*;public class dddde { public void displaySubSet(int setN[]) { int length = setN.length; int i; try { BufferedWriter writer = new BufferedWriter(new FileWriter(new File
2011-06-17 08:52:00
634
原创 归并排序的改进算法(使用静态链表)的时间复杂度分析
import java.util.Random;public class MergeSortL { static int insert(int[] a, int[] link, int start, int end) { // 静态链表插入排序 int liststart = start; for (int i = start + 1; i <= end; i++) {
2011-06-17 08:32:00
892
原创 快速排序不同输入规模时间复杂度分析
import java.util.Random;public class QuickSort { public static void quickSort(int[] a, int low, int high) { int i, j; int temp; i = low; j = high; temp = a[low]; // 取第一个元
2011-06-17 00:14:00
655
原创 The usage of finalize()
//: initialization/TerminationCondition.java// Using finalize() to detect an object that// hasn’t been properly cleaned up.class Book { boolean checkedOut = false; Book(boolean checkOut) {
2011-06-16 21:05:00
248
原创 @override是java中的作用
如果想重写父类的toString()方法的话,在方法前面加上@Override 系统可以帮你检查方法的正确性@Overridepublic String toString(){...}这是正确的 一旦写错 写成这样:@Overridepublic String tostring(){...}编译器可以检测出这种写法是错误的 这样能保证你的确重写的方法正确而如果不加@Overri
2011-06-16 21:01:00
262
原创 代码复用的第三种:代理
这是继承与组合之间的中庸之道,因为我们将一个成员对象置于所要构造的类中(就像组合),但与此同时我们在新类中暴露了该成员对象的所有方法(就像继承)。代理就解决了这个问题,如下例:继承://Detergent.javaclass Cleanser { private String s = "Cleanser"; public void append(St
2011-06-16 21:00:00
234
原创 Java中初始化基类的顺序问题2
//Stem.javaclass Component1{ Component1(int c){ System.out.println("Component1():"+c); }}class Component2{ Component2(int c){ System.out.println("Component2():"+c); }}c
2011-06-16 20:40:00
286
原创 Java中初始化基类的顺序问题1
//C.javaclass A{ A(int a){ System.out.println("A(int a)"+a); }}class B extends A{ B(int b){ super(1); System.out.println("B(int b)"+b); }}public class C extends A{
2011-06-16 20:32:00
245
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人