摘要: 面向连接的系统调用面向无连接的系统调用1.Winsock的打开int WSAStartup(WORD wVersionRequested, LPWSADATA lpWSAData);成功返回0,失败返回不同的错误信息。2.服务器建立套接字SOCKET socket(int af, int type, int protocol);成功返回套接字对象,失败返回INVALID_SOCKETaf:说明套接口要使用的协议地址族,目前只提供AF_INET表示互联网(IP)协议。type:描述套接字的类型,只能是SOCK_STREAM,SOCK_DGRAM,SOCK_RAW 3个协议中的一个,分别表示流套接 阅读全文
posted @ 2012-05-02 18:07 kkkwar 阅读(385) 评论(0) 推荐(0)
摘要: C++对象的内存布局看以下程序,C++如何存储和实现这个类的对象:View Code 1 #include <stdio.h> 2 #include <stdlib.h> 3 4 class simpleClass{ 5 public: 6 static int nCount; //静态成员数据 7 int nValue; //非静态成员数据 8 char c; 9 10 simpleClass(){}11 virtual ~simpleClass(){} //虚析构函数12 int getV... 阅读全文
posted @ 2012-04-22 17:28 kkkwar 阅读(166) 评论(0) 推荐(0)
摘要: 对象的创建及生命周期对象的生命周期是指从对象创建到对象销毁的过程,创建对象时要占用一定的内存空间,对象销毁后要释放相应的内存,因此整个程序占用的内存空间也随着对象的创建和销毁而动态的发生变化。对象的创建有三种方式,他们创建的对象的生命周期各有不同。(一) 通过定义变量创建对象。这种情况下,变量的作用域决定了对象的生命周期,当进入变量的作用域时,对象被创建,退出变量作用域时,对象被销毁。全局变量的作用域时整个程序,声明为全局变量的对象在调用main函数之前被创建,退出main函数之后被销毁。静态变量有文件作用域,不是整个程序。但静态变量存储在全局/静态数据区中,在程序开始时已经分配好。因此,声明 阅读全文
posted @ 2012-04-22 16:06 kkkwar 阅读(174) 评论(0) 推荐(0)
摘要: //参考C陷阱与缺陷1> C语言中只有一维数组,数组大小必须在编译器作为常数确定下来。2> C语言中数组元素可以是任何类型的对象,也可以是另外一个数组。3> 对于一个数组,我们只能够做两件事:确定数组的大小,以及获得指向该数组下标为0的元素的指针.其他任何关于数组的操作,都是通过指针进行的.4> 任何一个指针都是指向某种类型的变量5> 给一个指针加上一个整数,与给该指针的二进制表示加上同样的整数,两者含义截然不同.6> *(a+i)是数组a中下表为i的元素的引用,它被简记为a[i] 阅读全文
posted @ 2012-04-14 17:17 kkkwar 阅读(137) 评论(0) 推荐(0)