
C/C++开发
coffeegg
这个作者很懒,什么都没留下…
展开
-
vector用法
Vector用于存储对象数组 常用方法 1.push_back 在数组的最后添加一个数据 2.pop_back 去掉数组的最后一个数据 3.at 得到编号位置的数据 4.begin 得到数组头的指针 5.end 得到数组的最后一个单元+1的指针 6.front 得到数组头的引用 7.back 得到数组的最后一个单元的引用 8.max_size转载 2010-04-13 16:52:00 · 3068 阅读 · 0 评论 -
一道变态的面试题
题目:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。 一般都是利用构造函数来解答.但考虑到&&这个逻辑运算符号,a&&b,如果a为false,则不进行b语句的执行,由此可以写出如下的函数,更为简洁明了int culplus(int n){ (n!=1)&&(n+=culplus(n-1原创 2010-04-14 09:29:00 · 542 阅读 · 0 评论 -
STL的堆操作
STL里面的堆操作一般用到的只有4个:make_heap();、pop_heap();、push_heap();、sort_heap();他们的头文件函数是#include 首先是make_heap();他的函数原型是:void make_heap(first_pointer,end_pointer,compare_function);一个参数是数组或向量的头指针,第二个向量是尾指针。第三个转载 2010-04-15 09:56:00 · 917 阅读 · 0 评论 -
[zz]IO - 同步,异步,阻塞,非阻塞
同步阻塞IO 在这个模型中,应用程序(application)为了执行这个read操作,会调用相应的一个system call,将系统控制权交给kernel,然后就进行等待(这其实就是被阻塞了)。kernel开始执行这个system call,执行完毕后会向应用程序返回响应,应用程序得到响应后,就不再阻塞,并进行后面的工作。 例如,“在调用 read 系统调用时,应用程序会阻塞并对内核进行上下文切换。然后会触发读操作,当响应返回时(从我们正在从中读取的设备中返回),数据就被移动到用户空间的缓冲区中。然后应用原创 2010-10-19 21:17:00 · 844 阅读 · 0 评论 -
关于fwrite写文件的一点问题
fwrite函数只是将所写内容存入用户缓存,并不立刻写入文件.fflush函数将用户缓存中的内容写入内核缓冲区fsync函数则是将内核缓冲写入文件fclose则先执行fflush,再关闭文件的读写.因此,如果使用fwrite,要想让数据立刻落地,必须使用fflush(fp);fsync(fileno(fp))才可以!原创 2011-04-08 15:12:00 · 2853 阅读 · 0 评论