02 2014 档案
摘要:char*fun(){ char*p = “ab”; return p;}char*fun1(){ char *arry[10] = "ab" char*q = arry; return q;}int main(){ char*p =fun(); puts(p);//正确,打印文字常量区的一个字符串。 char *q = fun1(); puts(q);//错误,因为字符串被放在了栈区,当fun1执行完之后,字符串数组占用的空间已经被释放掉,这些空间可能被其他程序的局部变量占用。导致打印乱码。}
阅读全文
摘要:在用户空间,进程是由进程标识符(PID)表示的。从用户的角度来看,一个 PID 是一个数字值,可惟一标识一个进程。一个 PID 在进程的整个生命期间不会更改,但 PID 可以在进程销毁后被重新使用,所以对它们进行缓存并不见得总是理想的。进程表示 在 Linux 内核内,进程是由相当大的一个称为 task_struct 的结构表示的。此结构包含所有表示此进程所必需的数据,此外,还包含了大量的其他数据用来统计(accounting)和维护与其他进程的关系(父和子)。struct task_struct { volatile long state; void *stack; un...
阅读全文
摘要:要正确使用二级指针,必须理解两句话:1.获得一个内存单元的地址就获得了这个单元的一切权限。2.函数调用时参数传递的单项性。
阅读全文
摘要:第一种temp是一个空指针,第二种 a+i 是个常量不可改变,赋值左值无效。注:必须传递指针才能改变相应空间的内容。
阅读全文
摘要:rewind也可以换成fseek :fopen打开一个文件时,同时有两个缓冲区,读缓冲区和写缓冲区。关闭文件之前缓冲区里的内容不会被写到文件里面,但是rewind和fseek函数会考虑缓冲区里的内容。w方式打开的文件只能写,不能读。a方式打开的文件rewind 起不到作用,每次往文件里面写东西都会写到文件尾。
阅读全文
摘要:1.函数名 :ch = getc (fp)参数:一个文件指针fp函数功能:从fp指定的文件当前文件偏移量处读取一个字符放到变量ch里面。返回值:返回读取到的字符,读到文件尾返回EOF。2.函数名:putc(ch,fp);参数:ch:要输出的字符,fp:字符输出的目的流。函数功能:将ch变量里面的字符...
阅读全文
摘要:只有枚举类型的在定义的时候各个元素之间使用 逗号。
阅读全文
摘要:1.对于一个二维数组指针int(*p)[4] = a[3][4];*(p+2) ==a[2];p+2 == a+2;因为p指向行,存放的是第二行的行地址,而a[2]存放的是第二行首元素的地址。但是二者的值是相同的。2.ch = getchar() ; putch(ch); 读取缓冲中的现存的第一个字符,或者将要从键盘上敲入的字符。变量ch存放getchar获得的字符,给putchar输出3.字符数组的初始化注意点。char*str[10] ;str = “hello”;(错)char * str;str ="hello";(正确) ,让str指向文字常量区的字符串hello
阅读全文
摘要:网线有两种做法,一种是交叉线,一种是平行线交叉线的做法是:一头采用568A标准,一头采用568B标准 平行线的做法是:两头同为568A标准或568B标准,(一般用到的都是568B平行线的做法)568A标准:绿白,绿,橙白,蓝,蓝白,橙,棕白,棕 568B标准:橙白,橙,绿白,蓝,蓝白,绿,棕白,棕你可以注意下,两种做法的差别就是橙色和绿色对换而已。如果连接的双方地位不对等的,则使用平行线,例如电脑连接到路由器或交换机如果连接的两台设备是对等的,则使用交叉线,例如电脑连接到电脑
阅读全文

浙公网安备 33010602011771号