2013年7月8日
摘要: 1。变量的声明。 在不同的源文件中,应该是1个定义+多个声明的形式存在的,并且声明的类型和定义的类型要一样,否则可能会报错。 声明 : extern 类型 变量名 声明并定义: extern 类型 变量名=值 定义: 类型 变量明=值 static用来修饰变量和函数是属于某个源文件的,不能被其他的源文件引用。2。 函数返回类型 如果函数在被调用前没有声明,那么函数的返回类型默认是整形int的,如果将函数和调用函数的分别写在2个不同的源文件,那么在函数被调用的地方要进行函数的声明。3。头文件 对1个要被广泛声明的变量,可以把它写在头文件中,例如 file.h extern ... 阅读全文
posted @ 2013-07-08 22:10 紫金树下 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 主要是几个命令 free 查看系统内存使用情况 ps aux 和ps -al,pstree top命令能够查看当前系统的负载 uptime命令打印系统启动多长时间和1,5,15分钟内的平均负载 uname命令打印内核的信息 netstat追踪网络信息 dmesg分析内核产生的信息 vmstat检测系统资源变化 kill和killall命令,kill -signal PID或者%工作号,killall -signal 命令名称 kill的基本signal ,1代表重新读取配置文件,相当于这个进程重新执行;9代表进程强制结束;15代表进程正常结束;17代表暂停一个进程;2代表终断1个进程,可以用. 阅读全文
posted @ 2013-07-08 21:29 紫金树下 阅读(66) 评论(0) 推荐(0) 编辑
摘要: 1.关于数组和数组指针 数组的名字默认是常量指针,值不能改变的,例如 int a[]={1,2,3,...},这个a的类型时int *,所以如果有int *p,那么a=p是合法的,其他的指针类型,例如char *p=a都是不合法的 2维或者多维数组的指针声明,例如2维数组 int a[12][31],那么声明数组的指针应该是 int (*p)[31],p是一个数组指针,它指向的数组有31个int元素,p的实际类型应该是int**的,所有把int*类型赋值给int**类型时错误的,例如 int a[10]; int (*p)[10]; p=a;//是错误的 正确使用数组指针应该是:... 阅读全文
posted @ 2013-07-08 16:30 紫金树下 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 1。函数的调用和番薯返回值是函数指针的声明 定义一个函数指针,例如 int (*fp)(float),这个函数的返回值是Int,参数是1个float类型,调用这个函数的方法是 (*fp)(),还有fp()是对前面的简写 定义一个函数返回函数指针,典型的 是signal函数,用typedef它应该是这样定义的 typedef void (*FUNC)(int); FUNC signal(int,FUNC) 摊开写就是 void (*)(int) signal(int , void (*)(int)) -------> void (*(signal(int,void (*)(int))).. 阅读全文
posted @ 2013-07-08 15:41 紫金树下 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 1。运算符的贪心性,匹配最长的运算符,例如 n-->0,从-开始,-是运算符,--是运算符,-->就不是,所以是 n -- > 0,--是 a---b,-是,--是,,---不是,所以a---b=a-- - b a+++++b,从+开始,+是,++是,+++不是,所以a++是单独的,后面是+,再++b,所以a+++++b=a++ + ++b y=x/*p,/是运算符,/*是注释的开始,也是,所以左边的意思是y=x注释开始p,如果写成y=x/ *p,那么就是y=x/(*p)的意思了2. 单引号字符表示一个整形常量,它再ASCII吗表中对应的整数,"huhu" 阅读全文
posted @ 2013-07-08 15:01 紫金树下 阅读(148) 评论(0) 推荐(0) 编辑