- 博客(13)
- 资源 (2)
- 收藏
- 关注
转载 c++多个源文件共用一个全局变量(extern 的用法)
例子:头文件:state.h 源文件:state.cpp 其它源文件:t1.cpp t2.cpp t3.cpp, 这些源文件都包含头文件state.h。需要定义一个全局变量供这些源文件中使用:方法如下1、在 state.h声明全局变量: extern int a;2、在state.cpp中定义该全局变量:int a = 10;
2014-10-31 08:54:19 1174
原创 关于网络字节序和主机字节序
什么是字节序?是指整数在内存中保存的顺序。 字节序有两种: a.Little endinan 低位存储在内存的低地址,高位存储在内存的高地址; b.Big endian 高位存储在内存的低地址,低位存储在内存的高地址;
2014-10-20 20:53:24 303
原创 UDP协议与TCP协议的比较
UDP协议在创建插口之后,可以同多个服务器端建立通信,而TCP协议只能与一个服务器端建立通信,TCP不允许目的地址是广播或多播地址,UDP允许。UDP协议客户端同服务器端的通信关系可以是一对多的关系,而TCP协议只能是一对一的关系。
2014-10-18 10:54:58 470
转载 UDP中的Connect
标准的udp客户端开了套接口后,一般使用sendto和recvfrom函数来发数据,实际上,udp发送数据有两种方法供大家选用的:方法一: socket----->sendto()或recvfrom() 方法二: socket----->connect()----->send()或recv().(此时sendto,recvfrom仍可用)
2014-10-18 10:22:26 357
转载 socket通信简介
我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型有哪些?还有socket的基本函数,这些都是本文想介绍的。本文的主要内容如下:
2014-10-16 20:27:13 342
原创 va_start和va_end使用详解
1.在C中,当我们无法列出传递函数的所有实参的类型和数目时,可以用省略号指定参数表void foo(...);void foo(parm_list,...);这种方式和我们以前认识的不大一样,但我们要记住这是C中一种传参的形式,在后面我们就会用到它。
2014-10-15 21:06:57 376
转载 Linux网络编程之多播
1.概念单播是用于两个主机之间传送数据,广播是一个主机对局域网内的所有主机发送数据。而多播,又称为组播,它是对一组特定的主机通信。将网络上同一类型 业务逻辑上分组,只和组内的成员通信,其它主机没有加入组则不能通信。与单播相同的是,组播允许在Internet上通信,而广播只是同一局域网内的主机 通信。组播地址是特定的,D类地址用于组播,即244.0.0.0到239.255.255.255.
2014-10-13 22:33:46 375
原创 作用域
C++变量根据定义的位置的不同的生命周期,具有不同的作用域,作用域可分为6种:全局作用域,局部作用域,语句作用域,类作用域,命名空间作用域和文件作用域。
2014-10-09 21:40:21 449
转载 C++ 全局对象 全局变量和局部变量 静态变量
讨论全局变量之前我们先要明白几个基本的概念: 1. 编译单元(模块): 在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ERROR), 因为它不像编译错误那样可以给出你程序错误的具体位置,你常常对这种错误感到懊恼,但是如果你经常使用gcc,makefile等工具在linux或者嵌入式下做开发工作的话,那
2014-10-09 21:07:01 445 1
转载 #ifndef
这是 //if not defined的简写,是宏定义的一种,它是可以根据是否已经定义了一个变量来进行分支选择,一般用于调试等等。实际上确切的说这应该是预处理功能中三种(宏定义,文件包含和条件编译)中的一种----条件编译。
2014-10-08 22:26:45 358
转载 预处理——如何避免对同一头文件的多次include
在同一个项目中可能会出现对同一个头文件include多次的情况。例如:在a.h文件中include了stdio.h,在b.c中include了stdio.h、a.h。 如果没有做适当的处理,编译器将认为程序对某些宏、结构等进行了重复定义。 使用条件编译(ifndef/define/endif)可以避免这种情况。 条件指示符#ifndef检查预编译常量在前面是否已经被定义。如
2014-10-08 21:54:21 1083
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人