- 博客(12)
- 资源 (1)
- 收藏
- 关注
原创 const char **ptr 与 char *ptr[] 的释放问题的探究
先上代码,以便于分析#include <iostream> #include <string> #include <string.h> #include <stdlib.h> #include <stdio.h>using namespace std;int main() { char *data[] = {NULL}; const char **ptr = (const char*
2016-05-20 19:58:37 2698
原创 malloc与free的配对使用的注意
malloc与free要配对使用,但是若对指针的相关操作不注意,同样会导致错误。首先来看下面的一个小例子: #include <stdio.h> #include <stdlib.h> #include <string.h>int main() { char *c = (char *)malloc(sizeof(char)*5); bzero(c, 5); printf("--
2016-05-20 19:42:11 951
原创 一道经典多线程题
问题的描述 启动3个线程打印递增的数字, 线程1先打印1,2,3,4,5, 然后是线程2打印6,7,8,9,10, 然后是线程3打印11,12,13,14,15. 接着再由线程1打印16,17,18,19,20....以此类推, 直到打印到75. 程序的输出结果应该为: 线程1: 1 线程1: 2 线程1: 3 线程1: 4 线程1: 5
2013-05-07 21:31:24 513
原创 腾讯-2012年实习生笔试
题目: 给定一数组a[N],我们希望构造数组b [N],其中b[j]=a[0]*a[1]…a[N-1] / a[j],在构造过程中,不允许使用除法: 要求O(1)空间复杂度和O(n)的时间复杂度; 除遍历计数器与a[N] b[N]外,不可使用新的变量(包括栈临时变量、堆空间和全局静态变量等); 实现程序(主流编程语言任选)实现并简单描述。 这道题,具体解法大家可看下:
2013-05-07 20:49:48 561
原创 迅雷多线程
第四题(迅雷笔试题):编写一个程序,开启3个线程,这3个线程的ID分别为A、B、C,每个线程将自己的ID在屏幕上打印10遍,要求输出结果必须按ABC的顺序显示;如:ABCABC….依次递推。 java实现见:http://blog.csdn.net/qingfengliuquan/article/details/5891187 这里我用c++基于事件对象来实现: 首先新建一空
2013-05-06 19:24:19 850
转载 TCP/IP三次握手和四次挥手
TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接,如图1所示。 (1)第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认。 (2)第二次握手:服务器B收到SYN包,必须确认客户A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器B进入SYN_RE
2013-05-06 18:52:41 443
原创 DOM及getElementById等常用的4个方法
DOM是document object model的缩写。其中, D:当创建了一个网页,并加载到浏览器时,就产生了DOM,它将为网页内容创建一个文档。 O:文档中的每个节点都是一个对象,比如元素节点,属性节点,文本节点。 M:模型,即文档以何种形式显示出来。 DOM中常用的方法有4个: getElementById(),通过id来来获取对象getElementsByTag
2013-04-25 20:23:11 939
原创 关联容器——map
顺序容器是通过元素在容器中的位置来顺序访问的,关联容器则不同,是通过键来存储和读取元素的。常用的顺序容器有一下几种: map元素通过键值来存取元素 set键的集合 multimap同一个键出现多次的map multiset同一个键出现多次的set 下面只介绍map 1、map (1) map中的键的类型必须定义" (2) map定义的类型 map::key_type键的类
2013-04-23 22:10:33 583
转载 const的常见用法
const用法主要是防止定义的对象再次被修改,定义对象变量时要初始化变量 下面我就介绍一下几种常见的用法 1.用于定义常量变量,这样这个变量在后面就不可以再被修改 const int Val = 10; //Val = 20; //错误,不可被修改 2. 保护传参时参数不被修改,如果使用引用传递参数或按地址传递参数给一个函数,在这个函数里这
2013-01-11 22:20:30 289
转载 TimeSpan
TimeSpan的用法 TimeSpan是用来表示一个时间段的实例,两个时间的差可以构成一个TimeSpan实例,现在就来简单介绍一下几点重要的用法: a 先来介绍几个方法 TimeSpan.Minutes(其他时间比如天数,小时数,秒数都一样的情况下得到的分钟数的差),其他的Hours,Second一样 DateTime.Tick :是一个计时周期,表示一百纳秒,即一千万
2012-07-25 19:44:57 304
原创 string 与StringBuilder的区别
C#中,string与StringBuilder都可以用于字符串的操作,那么它们之间有什么区别咧? 对象可否被改变: String对象初始化后就是个常量,不可被改变,但StringBuilder对象可以。 内存分配问题: String对象每次调用System.String 类中的一个方法时,都需在重新分配内存。而对 StringBuilder对象的操作则是在原来对象的内存空间
2012-07-23 19:51:26 275
转载 为什么学C++比C#的长期风险低
语言之争是程序员永远不会疲倦的闲暇话题,初学者的语言选择也是大家所津津乐道的。回望近年来,随着微软.net战略的来势汹汹,不少初学者都喜欢以C#作为自己的第一门语言。在这样的大环境之下,讨论C++还有什么意义么? 在瞎扯这个问题之前,我们先来看看为啥初学者都选择C#。估计原因很简单,就是入门容易。当然,这容易是相对于C++而言的。如果学C++,你肯定要看《C++ primer》这本经典吧?泛型
2012-03-22 13:52:11 275
友善之臂SBC-2410X使用手册
2011-05-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人