摘要:
shell编程基础(转自UBUNTU论坛)(2008-11-05 12:49:20)转载标签:shell分类:编程(C++)http://wiki.ubuntu.org.cn/Shell%E7%BC%96%E7%A8%8B%E5%9F%BA%E7%A1%80为什么要进行shell编程 Linux系统中虽然有各种各样的图形界面工具,但shell仍然是一个非常灵活的工具。Shell不仅集合了大量命令,还是一门非常棒的编程语言。借助shell,大量任务能实现自动化;shell特别擅长系统管理任务,尤其适合那些易用性、可维护性和便携性比效率更重要的任务。 下面,让我们一起来看看shell是如何工作.. 阅读全文
摘要:
开始三次握手:如果你还不会简单的tcp socket编程,我建议你先去学学,这就好比你不会C++基本语法,就别去研究vtable之类。三次握手开始于客户端试图连接服务器端。当你调用诸如connect的函数时,正常情况下就会开始三次握手。随便在网上找张三次握手的图:如前文所述,三次握手也就是产生了三个数据包。客户端主动连接,发送SYN被设置了的报文(注意序号和确认号,因为这里不包含用户数据,所以序号和确认号就是加一减一的关系)。服务器端收到该报文时,正常情况下就发送SYN和ACK被设置了的报文作为确认,以及告诉客户端:我想打开我这边的连接(双工)。客户端于是再对服务器端的SYN进行确认,于是再发 阅读全文
摘要:
#include <iostream>using namespace std;typedef struct CSNode{ char data; struct CSNode * firstchild , * nextsibling ;}* CSTree;//====================================================#define MAXSIZE 10CSTree q[MAXSIZE];int count=0; //初始化void init_cstree(CSTree &tree){ tree->f... 阅读全文
摘要:
awk 使用方法AWK 实用工具带有其自己的自包含语言,它不仅是 Linux 中也是任何环境中现有的功能最强大的数据处理引擎之一。这种编程及数据操作语言(其名称得自于它的创始人 Alfred Aho、Peter Weinberger 和 Brian Kernighan 姓氏的首个字母)的最大功能取决于一个人所拥有的知识。它允许您创建简短的程序,这些程序读取输入文件、为数据排序、处理数据、对输入执行计算以及生成报 表,还有无数其他的功能。AWK 是什么?最简单地说,AWK 是一种用于处理文本的编程语言工具。AWK 实用工具的语言在很多方面类似于 shell 编程语言,尽管 AWK 具有完全属于其 阅读全文
摘要:
一、【乘鹿罗汉】杨粼波随笔1082;文章45。【技术特长】C++,脚本引擎,FreeBSD【活跃程度】活跃【推荐博文】Ubuntu下的C/C++环境搭建【点评】牵着老婆满街逛的80后IT达人。========================================二、【喜庆罗汉】陈梓瀚随笔261。【技术特长】C++,Vczh Library++ 3.0,脚本技术【活跃程度】活跃【推荐博文】个人作品目录【点评】4岁的时候开始的钢琴,8岁的时候开始的看民科书。10岁的时候开始的糊变形金刚,14岁的时候开始的写程序。睡觉都梦见自己写完了编译器的80后IT达人。================ 阅读全文
摘要:
inux 学习书目推荐Linux基础1、《Linux与Unix Shell 编程指南》C语言基础1、《C Primer Plus,5th Edition》【美】Stephen Prata著2、《The C Programming Language, 2nd Edition》【美】Brian W. Kernighan David M. Rithie(K & R)著3、《Advanced Programming in the UNIX Environment,2nd Edition》(APUE)4、《嵌入式Linux应用程序开发详解》Linux内核1、《深入理解Linux内核》(第三版)2 阅读全文
摘要:
正如前面提到的,当程序中有内存访问问题时,会发生段错误。为了讨论这件事,重要的是先理解程序在内存中是如何布局的。在Unix平台上,为程序分配的虚拟地址的布局通常类似于图4-1所示的图。图4-1 程序内存布局这里虚拟地址0在最下方,箭头显示了其中两个组件(堆和栈)的增长方向,当它们增长时,消耗掉自由区域。各个部分的作用如下所示。文本区域,由程序源代码中的编译器产生的机器指令组成。例如,每行C代码通常会转换成两到三条机器指令,所有结果指令的集合组成了可执行文件的文本部分。这个部分的正式名称是.text。这一组件包括静态链接代码,包括做初始化工作的系统代码/usr/lib/crt0.0,然后调用ma 阅读全文
摘要:
友虽然安装好了mysql但却不知如何使用它。在这篇文章中我们就从连接MYSQL、修改密码、增加用户等方面来学习一些MYSQL的常用命令。一、连接MYSQL。格式: mysql -h主机地址 -u用户名 -p用户密码1、例1:连接到本机上的MYSQL。首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>2、例2:连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为r 阅读全文
摘要:
POJ 1769Minimizing maximizer线段树之点树:将最大的数字分离到最后的一位!题意分析:如果我们考虑将数组看成一条[1, n]的线段,而每项操作也看成是从[ i[k], j[k] ]的线段,那么题意就是按照线段的输入顺序,将线段[1, n]从左到右依次覆盖,问题变成求最小的覆盖线段总数.算法思想:考虑最基本的规划方法,用Opt[k]表示覆盖掉[1, k]的线段最少需要的步数,那么状态转移方程为:Opt[k] = min { Opt[d] + 1 | j[p] = k && d >= i[p] && d <= j[p] & 阅读全文
摘要:
1.new、delete、malloc、free关系delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任务强加于malloc/free。因此C++语言需要一个能完成动态内存分配和初始化 阅读全文