2013年4月6日

摘要: 从source code到可执行程序,一般经历一下步骤:C源码 -》编译预处理-》编译-》连接-》可执行程序本文只讲述编译预处理的故事,编译预处理有三大作用:1、宏定义2、文件包含3、条件编译1、宏定义(1)不带参数的宏定义 define PI 3.1415926宏定义是在编译之前进行处理的,宏定义只是作简单的替换,不做语法检查。宏定义与变量不同,不能被赋值,不分配内存空间,只作字符替换。#define命令出现在函数的外面,宏名的有效范围是从定义到本源文件结束,在需要终止有效范围时,可以用#undef,例如(2)带参数的宏定义•在此种情况下,多使用括号,以免出现错误.有 #define S(r 阅读全文
posted @ 2013-04-06 23:03 江在路上 阅读(228) 评论(0) 推荐(0) 编辑
 
摘要: 1、排列A(n,m) = n! / (n-m)!2、组合C(n,m) = n! / ((n-m)! * m!) 阅读全文
posted @ 2013-04-06 22:20 江在路上 阅读(84) 评论(0) 推荐(0) 编辑
 
摘要: 简单基本的sql语句选择:select * from table1 where 范围插入:insert into table1(field1,field2) values(value1,value2)删除:delete from table1 where 范围更新:update table1 set field1=value1 where 范围查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串)---like的语法很精妙,查资料!排序:select * from table1 order by f 阅读全文
posted @ 2013-04-06 22:06 江在路上 阅读(64) 评论(0) 推荐(0) 编辑
 
摘要: 1、左移<<运算规则:按二进制形式把所有的数字向左移动对应的位数,高位移出(舍弃),低位的空位补零。数学意义:在数字没有溢出的前提下,对于正数和负数,左移一位都相当于乘以2的1次方,左移n位就相当于乘以2的n次方。2、右移>>运算规则:按二进制形式把所有的数字向右移动对应的位数,低位移出(舍弃),高位的空位补符号位,即正数补零,负数补1。右移一位相当于除2,右移n位相当于除以2的n次方。这里是取商哈,余数就不要了。3、无符号右移>>>运算规则:按二进制形式把所有的数字向右移动对应位数,低位移出(舍弃),高位的空位补零。对于正数来说和带符号右移相同,对于 阅读全文
posted @ 2013-04-06 21:00 江在路上 阅读(204) 评论(0) 推荐(0) 编辑
 
摘要: 优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右()圆括号(表达式)/函数名(形参表).成员选择(对象)对象.成员名->成员选择(指针)对象指针->成员名2-负号运算符-表达式右到左单目运算符(类型)强制类型转换(数据类型)表达式++自增运算符++变量名/变量名++单目运算符--自减运算符--变量名/变量名--单目运算符*取值运算符*指针变量单目运算符&取地址运算符&变量名单目运算符!逻辑非运算符!表达式单目运算符~按位取反运算符~表达式单目运算符sizeof长度运算符sizeof(表达式)3/除表达式/表达式左到右双目运算符*乘表 阅读全文
posted @ 2013-04-06 20:47 江在路上 阅读(163) 评论(0) 推荐(0) 编辑
 
摘要: 1、获得文件名和目录名(1)basename /etc/sysconfig/networknetwork(2)dirname/etc/sysconfig/network/etc/sysconfig2、打印文件内容 cat \ more \ lesscat -n filename-n :打印出行号,连同空白行也会有行号cat 是 Concatenate (连续)的简写, 主要的功能是将一个文件的内容连续输出在屏幕上面。鸟哥个人是比较少用 cat 啦!毕竟文件内容的行数会超过 40 行以上,嘿嘿!根本来不及在屏幕上看到结果! 所以,配合一下要介绍的 more 或者是less 来执行比较好!cat一 阅读全文
posted @ 2013-04-06 20:27 江在路上 阅读(152) 评论(0) 推荐(0) 编辑
 
摘要: 1、如何运行一个可执行文件(1)对于系统自带的命令,如ls,可以再任意目录下使用(2)现在假设位于目录test下,目录test下面有aa.sh脚本文件,如果我想运行aa.sh这个脚本文件,那么我们就必须输入 ./aa.sh,表示运行当前目录下的aa.sh,如果输入aa.sh,则系统会跟PATH环境变量的设置去搜寻aa.sh,并不是在本目录下寻找aa.sh2、echo命令(1) echo "318"(2) echo $PATH,$表示后面是一个变量3、PATH环境变量它是由一系列的目录组成的,中间使用分号(:)分割,可以修改PATH环境变量 ,例如PATH="$PA 阅读全文
posted @ 2013-04-06 19:25 江在路上 阅读(109) 评论(0) 推荐(0) 编辑
 
摘要: 1、循环队列在队列顺序存储结构中,除了用一组地址连续的存储单元依次存放从队列头到队列尾的元素之外,仍需要front和rear指向队列头元素和尾元素的位置。在C语言中,常如下约定:空队列:front ==rear删除元素,front++插入新元素,rear++,非空队列中,front始终指向队列头元素,rear始终指向队列尾元素的下一个位置。判断循环队列是否充满,有两种方法:1. 设立一个标记,当front==rear时,用于标示队列是空还是满,比如当前队列元素个数等。2. 少用一个空间,如果rear后一位置是front时则认为是满。2、顺序表顺序表是在计算机内存中以数组的形式保存的线性表 阅读全文
posted @ 2013-04-06 15:22 江在路上 阅读(66) 评论(0) 推荐(0) 编辑