2012/9/28——关于复习
不以物喜,不以己悲,宠辱偕忘。看似简单想要做到却是十分的困难,总是不能给自己一个准确的定位,对于即将到来的挑战,不能静下心来好好准备,想东想西,白白耽误了应当好好利用的时间。
为此,我决定,每天博客园汇报准备进度,今天显然是浪费掉了,看了一些BYR上的面经,感觉二面三面依然主要看算法和数据结构,对代码的质量要求可能也比一面要高一些,当然,项目方面的准备也应该更加清晰,毕竟考的东西实在太全面,想要投机取巧,临阵磨枪似乎不是那么容易,今晚看看C的一些基础知识,明天刷算法,然后看经典算法,最后复习一下操作系统和计算机网络。
这次机会这么难得,值得好好把握。
(1)一些C的基础:
int(16bit/32bit),short int(16bit),long long(64bit)
char(16bit/32bit)
_Bool(1bit)
可移植类型inttypes.h头文件
float(32bit)六位有效数字(+-10^37)
double(64bit)至少10位有效数字
字符串:strlen()函数【#include <string.h>】
运算符:sizeof(以字节为单位返回操作数大小)
(2)C中5中存储类型:自动(auto:自动变量不被自动初始化),寄存器(register:无法获得寄存器地址,代码块作用域),具有代码块作用域的静态(static:代码作用域,空连接,静态存储时间),具有外部链接的静态(extern),具有内部链接的静态(static)。
按作用域,
链接(外部链接(变量可在一个多文件程序中任何地方使用),
内部链接(【文件作用域,static】可在一个文件的任何地方使用),(具有代码块作用域或函数原型作用域的变量有空链接)),
存储时间划分(静态存储时期(文件作用域变量),自动存储时期(局部变量))。
(3)函数:外部的(可被其他文件中的函数调用),静态的(只能在定义它的文件中使用)
(4)分配内存:<stdlib.h>
malloc():例:double *ptd;
ptd=(double*)malloc(30*sizeof(double));
exit():内存分配失败,结束程序
free()
calloc()
(5)const:
volatile:硬件地址与其他并行运行程序共享数据
restrict: