摘要: 定义:词义,易变的, 实质是直接存取原始内存地址 (1)作用 volatile关键词影响编译器编译的结果,用 volatile声明的变量表示该变量随时可能发生变化,与该变量有关的运算,不要进行编译优化,以免出错 1.告诉编译器不要做任何优化 2.用volatile定义的变量会在程序外被改变,每次都必 阅读全文
posted @ 2017-09-15 11:26 DeanBoyLoveLinux 阅读(249) 评论(0) 推荐(0) 编辑
摘要: fork 后子进程对父进程的继承 (1)为什么需要创建子进程? 每一个程序的运行都需要进程,创建子进程可以实现宏观上的并行 (2)什么时候需要创建子进程? 当父进程执行到某个阶段,或接收到某个事件后,需要创建一个独立的进程来协助其完成任务时,才需要调用fork创建一个新进程 (3)子进程对父进程的继 阅读全文
posted @ 2017-09-15 10:43 DeanBoyLoveLinux 阅读(1223) 评论(0) 推荐(0) 编辑
摘要: 网络模型分层: OSI七层模型 TCP/IP四层模型 OSI:Open System Interconnection 开放系统互联 应用层 (Application) 应用层 (Application) 网络服务与最终用户的一个接口。 协议有:HTTP FTP TFTP SMTP SNMP DNS 阅读全文
posted @ 2017-09-14 15:49 DeanBoyLoveLinux 阅读(156) 评论(0) 推荐(0) 编辑
摘要: (1)strcpy函数没有处理内存重叠的情况,所以内存重叠时使用这个函数会让程序崩溃 函数原型为: char * strcopy(char *dst, char *src, int n) { char *addr = dst; assert((dst != NULL) && (src != NULL 阅读全文
posted @ 2017-09-14 14:44 DeanBoyLoveLinux 阅读(408) 评论(0) 推荐(0) 编辑
摘要: (1)如何在不使用第三个变量的情况 下交换变量值 第一种: 算术运算:把a、b看做数轴上的点,围绕两点间的距离来进行计算 int a,b;a=10;b=12;a=b-a; //a=2;b=12b=b-a; //a=2;b=10a=b+a; //a=12;b=10 具体过程:第一句“a=b-a”求出a 阅读全文
posted @ 2017-09-14 11:10 DeanBoyLoveLinux 阅读(291) 评论(0) 推荐(0) 编辑
摘要: 打印:a = 5 static定义变量,函数调用后,a的值还是不变 上面这个是我本来理解的功能,static定义变量后,调用函数,值会被改变,但是值没有变,把static的作用理解错了 打印: a = 10 a = 9 static 在函数调用中就表示只定义一次,再次调用函数时,不再执行此赋值语句 阅读全文
posted @ 2017-09-13 16:08 DeanBoyLoveLinux 阅读(537) 评论(0) 推荐(0) 编辑
摘要: http://edsionte.com/techblog/ 阅读全文
posted @ 2017-09-13 15:03 DeanBoyLoveLinux 阅读(119) 评论(0) 推荐(0) 编辑
摘要: (1) char *a = "abc"; char *b; b = a; printf("%s\n", b); 打印:abc a b 都是字符串指针,拷贝的是字符串地址,而不是字符串本身 (2) 打印:abc 数组名代表数组的首地址,即第一个元素的首地址 (3) 打印:abc)F��P� 数组a没 阅读全文
posted @ 2017-09-12 10:56 DeanBoyLoveLinux 阅读(1337) 评论(0) 推荐(0) 编辑