- 博客(8)
- 收藏
- 关注
原创 剑指Offer
一、面试题(1)斐波那契数列long long Fibonacci(int n){ int result[2]={0,1}; if(n<=1) return result[n]; long long fibone = 1; long long fibtwo =0; long long fibN = 0; for(int i =2;i<=n;++i) { fibN=
2017-10-28 13:50:03 217
原创 高效的事件处理模式和高效的并发模式
一、高效的并发模式(Reactor模式和Proactor模式)Reactor模式:主线程只负责监听文件描述符上是否有事件发生,有的话立即将该事情立即通知工作线程、除此之外,主线程不做任何其他是支持性的工作,读写数据,接受新的连接,以及处理客户请求均在工作线程中完成。Proactor模式,所有的IO操作都在主线程和内核中完成,只有客户的逻辑处理交给工作线程处理。
2017-10-27 23:00:27 322
原创 多线程编程
一、线程和进程之间的区别(1)进程是资源分配的最小单元,线程是最小的调度单元;在多线程情况下,多个线程会共享进程的资源,进程有独立的地址空间,但是线程只有计数器和独立的堆栈;(2)进程个体之间完全是独立的,线程之间是彼此依存的,任何一个进程结束不会影响另外一个进程,但是在多线程的情况下,如果主线程结束了,那么其子线程也会被迫结束。(3)进程之间有自己的通信方式,比如管道,信号量
2017-10-27 22:16:16 138
原创 strcpy函数,strcat函数,strtok函数
(一)strtok函数的用法:函数原型:char * strtok(char * s,const char * delim);(1)strtok函数用来将字符串分割成一个片段,参数s指向欲分割的字符串,参数delim则分割字符串中包含的所有字符。当strtok()在参数s的字符串中发现参数delim中包含的字符,则会将字符修改为'\0'.(2)在第一次调用时strtok()必须给予参数s字
2017-10-27 19:33:25 483
原创 string函数的构造函数,析构函数,拷贝构造,赋值构造
#includeusing namespace std;#includeclass String{public: String(const char *str = NULL); String(const String& other); String& operator=(const String & other); ~String(void); void print()
2017-10-27 19:16:56 209
原创 BOOL,指针,int作为判断条件,在代码中的实现
一、BOOL与0值得比较规则:不可将BOOL型变量直接与TRUE,FALSE,1,0比较。根据BOOL型变量的定义,零值为假(记为FALSE),非零值都为真。假设BOOL型变量名为flag,它与零值比较的标准If语句为:if(flag)//表示flag为真,if(!flag)//表示flag为假其他的都属于不良风格:if(flag == TRUE)if(flag == FA
2017-10-23 17:28:08 2837
原创 正则表达式
(1)匹配任意字符 . 字符可以匹配任何一个单个字符文本:sales1.xlsorders3.xlssales2.xlssales3.xlsapacl.xlseurope2.xlsnal.xlsna2.xlssal.xls正则表达式:sales.结果:sales1sales2sales3分析:正则表达式sales.将把由字符串sales和另外一个字符构成
2017-10-22 15:45:50 172
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人