摘要: extern 作用1:声明外部变量现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量是互相透明的,也就是说,在编译时,全局变量的可见域限制在文件内部。例1:创建一个工程,里面含有A.cpp和B.cpp两个简单的C++源文件://A.cpp:int iRI;int main(){//.....}//B.cppint iRI;gcc A.cpp -cgcc B.cpp -c编译出A.o, B.o都没有问题。但当gcc A.o B.o -o test时,main.o:(.bss+0x0): multiple definition of `iRI'b.o:(.bss+0 阅读全文
posted @ 2011-09-20 18:08 张兰云 阅读(2632) 评论(0) 推荐(1)
摘要: 引言:在进行网络通信时是否需要进行字节序转换?相同字节序的平台在进行网络通信时可以不进行字节序转换,但是跨平台进行网络数据通信时必须进行字节序转换。原因如下:网络协议规定接收到得第一个字节是高字节,存放到低地址,所以发送时会首先去低地址取数据的高字节。小端模式的多字节数据在存放时,低地址存放的是低字节,而被发送方网络协议函数发送时会首先去低地址取数据(想要取高字节,真正取得是低字节),接收方网络协议函数接收时会将接收到的第一个字节存放到低地址(想要接收高字节,真正接收的是低字节),所以最后双方都正确的收发了数据。而相同平台进行通信时,如果双方都进行转换最后虽然能够正确收发数据,但是所做的转换是 阅读全文
posted @ 2011-09-20 17:59 张兰云 阅读(801) 评论(0) 推荐(0)
摘要: 关于表达式去掉多余的括号括号在三种情况下可以去掉:1:开头的括号,不管怎样都可以去掉2:括号前面不是'-'号的括号,可以去掉3:括号前面是'-'号,但是里面没有运算符的也可以去掉// 1690.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include<iostream>#include<cstdio> #include<cstring> using namespace std;#define N 260int main() { int t,i,j,del[N],ma 阅读全文
posted @ 2011-09-20 10:34 张兰云 阅读(294) 评论(0) 推荐(1)