Simon的博客

专注于互联网后台架构开发

聊聊exit()、_exit()、atexit()的区别

一句话总结:exit()函数在调用exit系统之前把文件缓冲区的内容写回文件;用_exit()函数直接将进程关闭,缓冲区的数据将会丢失;atexit则是main结束后调用处理函数。 exit - cause normal process termination.   void exit(...

2017-10-31 12:40:41

阅读数 126

评论数 0

linux任务调度机制

一句话总结:

2017-10-30 13:07:02

阅读数 647

评论数 0

系统如何将一个信号通知到进程

一句话总结:

2017-10-30 13:05:16

阅读数 327

评论数 0

String类的简单实现

一句话总结:注意C++string与C中的字符数组的区别

2017-10-30 13:03:11

阅读数 186

评论数 0

写个程序判断系统是多少位,是大端还是小端

一句话总结:位数用指针判断,大小端用union(联合体、共用体)。 #include int main() { int a = 0x12345678; printf("Os is %ld\n", sizeof(int*)); printf("a's size...

2017-10-29 21:20:32

阅读数 197

评论数 0

进程地址空间分布和可执行文件分布

进程地址空间分布和可执行文件分布: 转载于:http://www.cnblogs.com/gtarcoder/p/6006023.html 进程地址空间     操作系统在管理内存时,每个进程都有一个独立的进程地址空间,进程地址空间的地址为虚拟地址,对于32位操...

2017-10-29 21:02:59

阅读数 200

评论数 0

聊聊Linux下的静态库与动态库的生成与使用

一句话总结:静态库在链接阶段集成于程序中,程序生成可删除;动态库在程序运行时在/usr/lib/目录下查找调用,删除后错误,编译链接均需加上-fPIC。 实验代码 fun.h#ifndef _FUN_H_ #define _FUN_H_ #define ver 2.0 void print()...

2017-10-29 20:21:48

阅读数 135

评论数 0

Linux常用调试命令

一句话总结:收集常用的实战命令 1、网络相关 netstat: 显示各种网络相关信息,如网络连接(无参数),路由表(-r),接口状态 (Interface Statistics)(-i),masquerade 连接(无效连接)(-m),多播成员 (Multicast Memberships)。...

2017-10-29 16:38:19

阅读数 211

评论数 0

聊聊netstat命令

netstat: 显示各种网络相关信息,如网络连接(无参数),路由表(-r),接口状态 (Interface Statistics)(-i),masquerade 连接(无效连接)(-m),多播成员 (Multicast Memberships). netstat  - Print ne...

2017-10-29 14:56:39

阅读数 269

评论数 0

二叉树的层次遍历

一句话总结:用队列,先进先出。

2017-10-26 23:51:00

阅读数 99

评论数 0

聊下类的浅拷贝问题

一句话总结:防止浅拷贝释放指针所造成的异常问题。 #include class A{ int i; }; class B{ A *p; public: B() { printf("construct B\n"); p=...

2017-10-26 20:14:16

阅读数 80

评论数 0

聊下汇总网段

ip地址10.1.8.0/24和10.1.9.0/24,汇总网段是? 从第一位不同的开始往后全为0;后面位相同的前缀位的位数 10.1.8.0/24 == 10.1. 0000 100 0 .0/24 10.1.9.0/24 == 10.1. 0000 100 1 .0/24 ...

2017-10-26 20:05:55

阅读数 321

评论数 0

看一个多态的题目

一句话总结:注意实例生成过程,注意多态的调用。 #include struct A{ void foo(){printf("foo\n");} virtual void bar(){printf("bar\n");} A(){bar();}...

2017-10-26 20:02:26

阅读数 109

评论数 0

聊聊数组指针

一句话总结:注意指针根据指向类型不同是有步长的,如指向结构体指针步长是一个结构体大小。 a是个int指针,步长是一个int大小,&a则是数组的地址,步长是数组大小。 #include int main() { int a[5]={1,2,3,4,5}; int *p=(i...

2017-10-26 19:57:06

阅读数 81

评论数 0

聊聊指针常量和常量指针

一句话总结:看const修饰谁,修饰的对象不能变。 #include using namespace std; int main(int argc, char const *argv[]) { int i = 10; int j = 10; const int *p1; int cons...

2017-10-26 19:36:36

阅读数 77

评论数 0

聊聊排列组合

假设有A、a、B、b、C、c六个元素,每个大小写元素不能相邻,求有多少种排列。 第一个位置有6种可能(假设为A),第二个位置有4种(假设为B); 第三个位置如果为a,那么只能2种排列,ABaCbc和ABacbC; 第三个位置如果不为a(假设为C),有2种可能C和c,第四个位置有两种可...

2017-10-26 19:23:55

阅读数 69

评论数 0

聊聊效率较高的几种常用排序算法

1、快速排序:主要思想是找个基准,将数据分成两半,不断迭代排序。注意所有元素都比基准大、或者都比基准小的情况。 #include using namespace std; void quickSort(int *a, int left, int right) { if(left &g...

2017-10-26 00:33:47

阅读数 452

评论数 0

聊聊TCP超时

一句话总结:防止阻塞在那里,任务该往下走的时候还要往下走。 1、接收超时,等待N秒,还是没有消息,那就接着往下走 服务端 #include #include #include #include #include #include #include using namespac...

2017-10-25 22:01:30

阅读数 168

评论数 0

获取文件大小的几种方式

1、通过文件C标准课fseek、fell获得,间接获得,速度慢 #include #include int main(int argc, char* argv[]) { FILE* fp; long size; fp = fopen("/Users...

2017-10-25 19:07:14

阅读数 1803

评论数 0

聊聊服务端异常终止的问题

一句话总结:服务端还有消息没有接受异常终止则发送RST给客户端,客户端再发送消息则失败; 服务端: #include #include #include #include #include #include #include using namespace std; int m...

2017-10-25 15:52:29

阅读数 392

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭