- 博客(662)
- 资源 (7)
- 收藏
- 关注
原创 【音频】waveOutOpen详解
一,使用示例: 1)定义参数 HWAVEOUT m_hWaveOut; WAVEFORMATEX m_waveformat; //音频格式 2)结构体赋值 m_waveformat.wFormatTag = WAVE_FORMAT_PCM;m_waveformat.nSamplesPerSec =
2012-11-05 22:00:30 7128 1
原创 【网络层】路由器的构成
一,概念 路由就是指通过相互连接的网络把信息从源地点移动到目标地点的活动 区别:路由和交换之间的主要区别? 交换发生在OSI参考模型的第二层(数据链路层),而路由发生在第三层,即网络层。这一区别决定了路由和交换在移动信息的过程中需要使用不同的控制信息,所以两者实现各自功能的方式是不同的。二,路由器作用
2012-11-03 16:48:22 2601
原创 【网络层】精析网络层 -- 因特网的路由选择协议
一,理想的路由算法 1)算法必须是正确的 2)计算简单 3)适应通信量和网络拓扑的变化 4)算法具有稳定性 5)算法是公平的 6)算法是最佳的:相对合理二,分层次的路由选择 1)静态路由选择:非自适应路由选择,简单、开销小 动态路由选择:自
2012-11-03 11:07:44 2081
原创 【网络层】精析网络层 -- 网际控制报文协议ICMP
网际控制报文协议ICMP(Internet Control Message Protocol) 1)报文格式:ICMP报文封装到IP报文的数据部分 而ICMP报文的数据部分为要报告差错的IP数据报的IP头部和数据部分前8个字节(IP地址和端口号) 2)ICM
2012-11-02 23:27:59 1687
原创 【网络层】网络层概述
一,网络层提供的两种服务 虚电路和数据报服务的区别? 虚电路数据报连接的建立必须有不要目的站地址使用仅在连接建立阶段使用,每个分组使用短的虚电路号每个分组都有目的站的全地址路由选择时机在虚电路连接建立时进行,所有
2012-11-01 23:51:15 1839
原创 【传输层】UDP知识详解
一,UDP简介 UDP是传输层协议,和TCP协议处于一个分层中,但是与TCP协议不同,UDP协议并不提供超时重传,出错重传等功能,也就是说其是不可靠的协议。 UDP协议是英文UserDatagramProtocol的缩写,即用户数据报协议,主要用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多的C/S模式的网络应用都需要使用UDP协议
2012-11-01 22:18:43 11666
原创 【计算机网络】计算机网络面试题 系列二
31 、电信网络分类电信网络电路交换网络分组交换网络FDMTDM虚电路网络数据报网络32 、网络按地域范围分类? 局域
2012-10-30 23:06:25 3457
原创 【计算机网络】计算机网络面试题 系列一
1 、 OSI ( Open System Interconnect ):开放系统互联,是一个七层的计算机网络模型 分别为:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。 TCP/IP ( Transmission Control Protocol/Internet Protocol ):传输控制协议 / 因
2012-10-28 22:28:37 2667
原创 【传输层】传输控制协议TCP概述 之二
一,TCP的流量控制 1)利用滑动窗口实现流量控制:让发送方的速度不要太快,接收方来得及接收 TCP窗口单位为字节,不是报文段。 2)MSS: Maximum Segment Size 最大分段大小最大传输大小是TCP数据包每次能够传输的最大数据分段。 为了达到最佳的传输效能,TCP协议在建立连接的时候
2012-10-28 20:27:44 1669
原创 【传输层】传输控制协议TCP概述 之一
一,TCP的主要特点 1)面向连接 2)点对点 3)可靠交付,无差错、不丢包、不重复、按需到达 4)全双工通信,接收端和发送端都设有发送缓存和接受缓存 5)面向字节流:TCP把应用程序交付下来的数据仅仅看成 ”一连串无结构字节流“,但TCP不知道字节流含义。TCP也不保证接收方收到的数据块和发送方应
2012-10-27 23:52:37 2028
原创 【传输层】TCP三次握手/四次挥手详解
一,TCP(Transmission Control Protocol) 传输控制协议 TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:二,三次握手过程 第一次握手:主机A发送位码为SYN=1,随机产生seq =X 的数据包到服务器,主机B由SYN=1知道,A要求建立联机。(A处于SYN - SENT,B处于LISTE
2012-10-27 16:58:25 3032 1
原创 【Windows编程】如何判断操作系统是64位还是32位
我为我基础知识掌握的薄弱,感到深深的“折服”。感觉从知识体系的掌握上就有问题!!需要探索性的改进自身的知识架构。加油吧…… 一,不同位数操作系统下类型简介 类型32位操作系统(字节)64位操作系统(字节)char11short22int44long48long lo
2012-10-25 15:05:03 7067 2
原创 【算法】老鼠走迷宫问题的解答
一.题目: 用一个m行n列的二维数组来表示迷宫。数组中每个元素的取值为0或1。其中值0表示通路,值1表示阻塞,迷宫的入口在左上放(1,1)处,出口在右下方(m,n)处。要求求出从迷宫入口到出口有无通路,若有通路则指出其中一条通路的路径,即输出找到通路的迷宫数组,其中通路上的“0”用另外一个数字8替换,同时打印出所走通路径上每一步的位置坐标及下一步的方向。
2012-10-20 21:36:55 7068 3
原创 【热门技术】vs2005 下配置WinCE6.0环境
Windows CE 6.0所使用的Platform Builder 和以往的Windows CE 5.0/4.2等均不同,它并不是独立的开发平台软件,而是作为VS2005的一个插件来安装使用的,因此必须先安装VS2005,以后所有的内核配置编译等开发都基于VS2005进行。在安装WinCE6.0之前要先安装VS2005以及Vs2005的相关补丁,而所装操作系统(XP、Win7)和
2012-09-22 18:48:44 5476 2
原创 【热门技术】HFP蓝牙应用协议
一,定义 HFP(Hands-free Profile),让蓝牙设备可以控制电话,如接听、挂断、拒接、语音拨号等。拒接、语音拨号要视蓝牙耳机及电话是否支持。二,使用情景 汽车内的汽车套件是常见的使用情景。汽车套件将连接至手机并用于拨打和接听电话。将无线耳机连接至手机后使用耳机拨打和接听电话则更为常见。 产品范例:汽车、汽车套件、GPS系统、耳机、手机PD
2012-09-22 18:48:32 3238
原创 【热门技术】Ad Hoc 点对点通信模式 -- 移动自组织网络
一,概念 ad-hoc模式就和以前的直连双绞线概念一样,是P2P的连接,所以也就无法与其它网络沟通了。一般无线终端设备像PMP、PSP、PMA等用的就是ad-hoc模式。 在家庭无线局域网的组建,我想大家都知道最简单的莫过于两台安装有无线网卡的计算机实施无线互联,其中一台计算机连接Internet就可以共享带宽。 补充概念:
2012-09-22 18:48:26 3164
原创 【热门技术】Winsock 搜索蓝牙设备
http://blog.csdn.net/JamesXing/article/details/1700338 这里有各种蓝牙相关的文章我们如何检索计算机上面的蓝牙设备呢,我们使用winsock搜索蓝牙设备,请见代码分析#include "stdafx.h"#include #include #pragma comment(lib,"ws2_32.lib")int
2012-09-22 18:48:21 1706
原创 【Linux】Linux 下socket 编程
TCP/IP协议叫做传输控制/网际协议,又叫网络通信协议TCP/IP虽然叫传输控制协议(TCP)和网际协议(IP),但是实际上是一组协议,包含ICMP, RIP, TELENET, FTP, SMTP, ARP, TFTP等。从协议分层模型方面来讲,TCP/IP由四个层次组成:网络接口层、网络层、传输层、应用层。 关于更多TCP/IP协议,请参考下面的百度链接:http:/
2012-09-22 18:47:54 1069 1
原创 【Linux】Linux进程间通信的方法
Linux进程间通信的方法概述为以下七种:1、管道(pipe)2、有名管道(named pipe)3、信号量4、消息队列5、信号6、共享内存7、套接字-------------------------------------------------------------------------------linux进程间
2012-09-22 18:47:47 1127
原创 【java】各种对文件,读写的方法及小例子
import java.io.*; public class Test { /** * @param args the command line arguments */ public static void main(String[] args) throws FileNotFoundException, IOException {
2012-09-22 18:46:52 945
原创 【Android】对文件和文件夹操作
一,说明: 这几天做一个功能需要在手机上创建一个文件夹,然后往里面存储一些文件,首先得考虑用户有没有sdcard,如果有就在sdcard上创建一个指定的文件夹,如果没有则在你的工程所在的目录“/data/data/你的包名”下创建文件夹。用到的方法是:首先判断sdcard是否插入String status = Environment.getExternalStorageS
2012-09-22 18:46:43 1112
原创 【JNI】javah命令详解
一,javah 用法 javah命令主要用于在JNI开发的时,把java代码声明的JNI方法转化成C\C++头文件,以便进行JNI的C\C++端程序的开发。 【注意】javah命令对Android编译生成的类文件并不能正常工作(??求验证??)如果对于Android的JNI要想生成C\C++头文件的话,可能只有先写个纯的java代码来进行JNI定义,接着用JDK编译,然后再用j
2012-09-22 18:46:37 3473
原创 【RTP】 入门实践总结【精华】
一,windows 下资料 http://www.cnblogs.com/skyseraph/archive/2012/04/07/2435540.html一,安装Cmake二,在 jrtplib-3.9.1_1 中运行 cmake . 生成Makefile三,然后 make 接着 make install 头文件被安装在 /us
2012-09-22 18:34:14 3436 1
原创 【C/C++和指针】深度解析---指针与数组 【精华】
一,引例子二维数组可以使用指向数组的指针代替,而指针数组才可以用指向指针的指针代替。#includeusing namespace std;void main(){ char *a[]={"Hello","the","World"}; //指针数组 char **pa=a; //指向指针的指针 pa++; cou
2012-09-08 00:20:47 2274 8
原创 【100题】第八十一 ~ 第九十题
81)第1组百度面试题 1)题目:一个int数组,里面数据无任何限制,要求求出所有这样的数a[i],其左边的数都小于等于它,右边的数都大于等于它。能否只用一个额外数组和少量其它空间实现。 分析: 题意说明如果对数组排序的话,a[i] 就应该排在 i 的位置 只有这样才能保证左边的数都小于等于它,右边的数都大于等于它 解答:新建另一数
2012-09-03 00:32:06 2757 6
原创 【100题】第七十六题~第八十题
一,复杂链表的复制(链表、算法)1)题目:有一个复杂链表,其结点除了有一个m_pNext指针指向下一个结点外,还有一个m_pSibling指向链表中的任一结点或者NULL。其结点的C++定义如下:参考【转载】 struct ComplexNode{ int m_nValue; ComplexNode* m_pNext; C
2012-09-02 01:00:48 1619
原创 【Android】向sdcard中写入文件
一,添加函数try { File saveFile=new File("/sdcard/zhzhg.txt"); FileOutputStream outStream = new FileOutputStream(saveFile); try { outS
2012-08-30 23:52:39 4849
原创 【Android】更改程序图标
一,添加资源文件 在res/drawable-hdpi或res/drawable-ldpi或res/drawable-mdpi目录下,加下你要显示的图片,最好后缀是为.png的二,修改AndroidManifest.xml文件 里面有这样一行代码 把它改为其中:“***”表示你放入的图片的
2012-08-30 23:49:43 7551
原创 【Linux】Linux 下多进程编程详解
一.多进程程序的特点 进程是一个具有独立功能的程序关于某个数据集合的一次可以并发执行的运行活动,是处于活动状态的计算机程序。 进程作为构成系统的基本细胞,不仅是系统内部独立运行的实体,而且是独立竞争资源的基本实体。 进程是资源管理的最小单位,线程是程序执行的最小单位。进程管理着资源(比如 cpu、内存、文件等等),而将线程分配到某个 cpu 上执
2012-08-30 00:58:12 9429 5
原创 【Linux】Linux下多线程编程详解
一,为什么有了进程的概念后,还要再引入线程呢? 1)理由一:是和进程相比,它是一种非常"节俭"的多任务操作方式。在Linux系统下,启动一个新的进程必须分配给它独立的地址空间,建立众多的数据表来维护它的代码段、堆栈段和数据段,这是一种"昂贵"的多任务工作方式。 而运行于一个进程中的多个线程,它们彼此之间使用相同的地址空间,共享大部分数据,【1】启动一个线程所花费的空间远远小
2012-08-30 00:56:13 1773
原创 【100题】第七十一题~第七十五题
一,数值的整数次方。1)题目:实现函数double Power(double base, int exponent),求base 的exponent 次方。不需要考虑溢出。2)分析:这是一道看起来很简单的问题。却暗藏玄机3)源码: 第一反应:我想这个代码应该都能写出来吧#include using namespace std;double Power(do
2012-08-27 00:03:59 1492 1
原创 【100题】第六十六~第七十题(颠倒栈、扑克牌顺子和掷骰子概率、数字数组排成最小数、求旋转数组中最小值、全排列)
一,颠倒栈。1)题目:用递归颠倒一个栈。例如输入栈{1, 2, 3, 4, 5},1在栈顶。颠倒之后的栈为{5, 4, 3, 2, 1},5处在栈顶。2)分析:乍一看到这道题目,第一反应是把栈里的所有元素逐一pop出来,放到一个数组里,然后在数组里颠倒所有元素,最后把数组中的所有元素逐一push进入栈。这时栈也就颠倒过来了。颠倒一个数组是一件很容易的事情。不过这种思路需要显示分配一个长
2012-08-26 21:00:40 2187
原创 【C++ Primer】int 转 string
一、使用atoi 说明: itoa( int value, char *string, int radix ); 第一个参数:你要转化的int; 第二个参数:转化后的char*; 第三个参数:你要转化的进制; 举例:#include using
2012-08-26 16:58:11 1806
原创 【100题】第六十一题~第六十五题(数组中只出现一次的数、链表公共点、删除字串特定字符、寻找丑数、输出从1到最大的N 位数)
一,找出数组中两个只出现一次的数字1)题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。 请写程序找出这两个只出现一次的数字。要求时间复杂度是O(n),空间复杂度是O(1) 例如:A[ ]={1,1,2,2,3,3,4,4,5,6}; 需要找出5 和 6 2)分析:由异或运算的性质:任何一个数字异或它自己都等于0。依次异或数
2012-08-25 11:41:35 1772
原创 【RTP】Linux下RTP编程入门
一,流媒体简介 流媒体指的是在网络中使用流技术传输的连续时基媒体,其特点是在播放前不需要下载整个文件,而是采用边下载边播放的方式,它是视频会议、IP电话等应用场合的技术基础。RTP是进行实时流媒体传输的标准协议和关键技术。 网络上传输的数据形式有文字,图形,声音和视频。网络上传输音频/视频(Audio/Video,简称A/V)时,基本上只有下载和
2012-08-24 12:24:08 2290 1
原创 【100题】第六十题 删除链表结点要求O(1)时间复杂度
一,题目 给定链表的头指针和一个结点指针,在O(1)时间删除该结点。链表结点的定义如下:struct ListNode{int m_nKey;ListNode* m_pNext;};函数的声明如下: void DeleteNode(ListNode* pListHead, ListNode* pToBeDeleted);二,分析
2012-08-23 23:10:22 2100
原创 【100题】第五十九题 用C++编写不能被继承的类
一,题目 用C++设计一个不能被继承的类。二,分析 在Java中定义了关键字final,被final修饰的类不能被继承。但在C++中没有final这个关键字。 首先想到的是在C++中,子类的构造函数会自动调用父类的构造函数。同样,子类的析构函数也会自动调用父类的析构函数。要想一个类不能被继承,我们只要把它的构造
2012-08-23 22:31:45 1638 1
原创 【100题】第五十八题 从尾到头输出链表
一,题目 输入一个链表的头结点,从尾到头反过来输出每个结点的值。链表结点定义如下:struct ListNode{ int m_nKey; ListNode* m_pNext;};二,分析 解法一:把链表中链接结点的指针反转过来,改变链表的方向。然后就可以从头到尾输出了。参考 解法
2012-08-23 22:08:10 1314 2
原创 【100题】第五十七题 用两个栈实现队列
一,题目 某队列的声明如下:template class CQueue{public: CQueue() {} ~CQueue() {} void appendTail(const T& node); // append a element to tail void deleteHead();
2012-08-23 21:50:03 1110
原创 【汇编】Linux 下汇编程序开发
一,简介 Linux 下用汇编语言编写的代码具有两种不同的形式。 1)完全的汇编代码 指的是整个程序全部用汇编语言编写。尽管是完全的汇编代码,Linux 平台下的汇编工具也吸收了 C 语言的长处,使得程序员可以使用 #include、#ifdef 等预处理指令,并能够通过宏定义来简化代码。 2)内嵌的汇编代码
2012-08-23 16:13:41 1529
C++中 的Set容器
2012-05-24
libconio-1.0.0.tar.gz
2012-05-21
STL中map详细介绍
2012-05-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人