- 博客(5)
- 收藏
- 关注
原创 函数模板
函数模板 1函数模板定义 函数模板可以这样来定义一个函数(Swap)。 template <typename T> void Swap(T &a,T&b) { T temp; temp=a; a=b; b=temp; } 关键字template 和typename是必须的(可以用class代替typename);模板并不创建如何函数,只是告诉编译器如何定义函数。需要交换int的函数时,编译器将按照模板模式创建这样的
2020-08-02 10:47:05 173
原创 linux信号基本概念
linux信号基本概念 1.信号和中断比较 中断相关概念: 中断是系统对于异步事件的响应(进程执行代码的过程中可以随时被打断,然后去执行异常处理程序,中断信号,中断源,现场信息,中断处理程序,中断向量表。 计算机中的中断场景: 中断源发出中断信号,cpu判断中断是否屏蔽,保护现场,cpu执行中断处理程序,cpu恢复现场,继续原来任务。 中断其他概念: 中断向量表保存了中断处理程序的入口地址 中断个数固定,操作系统启动时初始化中断向量表 中断有优先级 中断可以屏蔽 信号概念: 1.信号是系统响应一些状况而产生
2020-07-20 15:23:10 293
原创 const关键字总结,及c和c++中const的区别
1.const修饰 const int a 是旧的习惯写法,int const a 是统一的风格写法,两个的功能是完全一样的,但是int const a 好理解一点。于是我们可以这样理解: *c++中,const修饰的是紧跟其后的内容。 所以int const a中,const 修饰的是a,也就是a是const。 相似的,char const *a中,const 修饰的是 *a,也就是 *a不能改变,但是a可以。 另外,char * const a,那就是a不能改变,*a可以。 2.const应用场景
2020-06-20 18:10:50 154
原创 select函数使用,linux简单聊天程序测试框架
套接字超时函数 读写超时函数 报尾部加\n解决字节流方式的粘包 服务器端避免僵尸进程,通过waitpid方法解决僵尸进程(其中一种方式) 使用SO_REUSEADDR选项可以使得不必等待TIME_WAIT状态消失就可以重启服务器setsockopt()函数 makefile文件 .PHONY:clean all CC=gcc CFLAGS=-Wall -g BIN=server client all:$(BIN) %.o:%.c $(CC) $(CFLAGS) -c $< -o $@ serve
2020-06-19 22:48:01 166
转载 setsockopt和getsockopt函数详解
备注:本文非原创,是在网上发现的。。写的不错,存起来,以备后用 来自: http://bbs.chinaunix.net/thread-4183776-1-1.html (出处: http://bbs.chinaunix.net/) 功能描述: 获取或者设置与某个套接字关联的选项。选项可能存在于多层协议中,它们总会出现在最上面的套接字层。 当操作套接字选项时,选项位于的层和选项的名称必须给出。 为了操作套接字层的选项,应该将层的值指定为SOL_SOCKET。 为了操作其它层的选项,控制选项的合适协议号必须给
2020-06-16 21:30:50 478
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人