摘要: 1、 声明外部变量 现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量是 互相透明的,也就是说,在编译时,全局变量的可见域限制在文件内部。下面举一个简单的例子。创建一个工程,里面含有A.cpp和B.cpp两个简单的C++源文件: //A.cpp int i; void main() { } //B.cpp int i; 这两个文件极为简单,在A.cpp中我们定义了一个全局变量i,在B中我们也定义了一个全局变量i。 我们对A和B分别编译,都可以正常通过编译,但是进行链接的时候,却出现了错误,错误提示如下: Linking... B.obj : e... 阅读全文
posted @ 2011-12-02 20:13 bigbigtree 阅读(2853) 评论(0) 推荐(0) 编辑
摘要: 文件中的#ifndef头件的中的#ifndef,这是一个很关键的东西。比如你有两个C文件,这两个C文件都include了同一个头文件。而编译时,这两个C文件要一同编译成一个可运行文件,于是问题来了,大量的声明冲突。还是把头文件的内容都放在#ifndef和#endif中吧。不管你的头文件会不会被多个文件引用,你都要加上这个。一般格式是这样的:#ifndef <标识> #define <标识>...... ......#endif<标识>在理论上来说可以是自由命名的,但每个头文件的这个“标识”都应该是唯一的。标识的命名规则一般是头文件名全大写,前后加下划线,并把 阅读全文
posted @ 2011-12-02 19:41 bigbigtree 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 作者:乾坤一笑 C语言教学早就进入了我国各大高校的教程,但是大家对它的认识以及重视程度还很是不够。很多人认为C语言无非是一种教学语言,是一种工业语言,它很老了,该淘汰了,比不上VC++、Java、C#等新兴语言牛B,所以不是很重视C语言。我认为,这些朋友是受了某些舆论的误导才会有此看法。C语言是各大操作系统的基础,Unix、Linux、Windows其内核都清一色是C语言开发的,(某些地方是和汇编语言混合开发的),君不见Windows API都是C语言函数的接口?Unix/Linux绝大多数应用都是C语言开发的;Windows应用程序用纯API开发已然不多,大多都是依靠某种Applicati. 阅读全文
posted @ 2011-12-02 14:53 bigbigtree 阅读(589) 评论(0) 推荐(0) 编辑
摘要: 编辑器加载中...1.使用CTime类 CString str; //获取系统时间 CTime tm; tm=CTime::GetCurrentTime(); str=tm.Format("现在时间是%Y年%m月%d日 %X");MessageBox(str,NULL,MB_OK);2: 得到系统时间日期(使用GetLocalTime) SYSTEMTIME st; CString strDate,strTime; GetLocalTime(&st); strDate.Format("%4d-%2d-%2d",st.wYear,st.wMonth 阅读全文
posted @ 2011-12-02 14:30 bigbigtree 阅读(78241) 评论(0) 推荐(1) 编辑
摘要: GDAL是一个操作各种栅格和矢量地理数据格式的开源库。包括读取、写入、转换、处理各种栅格和矢量数据格式。它支持各种图像格式,其详细清单见:http://www.gdal.org/formats_list.htm 。完成了图像的读取和显示,但不知这种方法是否为最佳,请各位指正,谢谢!本文就以VC为开发平台介绍GDAL对图像数据的操作方法。1.首先进行GDAl的配置工作,这在上文中已经提到,不再做陈述。2.然后,我是在Doc类里面添加OnOpenDocument(LPCTSTR lpszPathName)函数,其具体的操作在其中进行。创建文件对话框:,返回lpszPathName.CFilefil 阅读全文
posted @ 2011-11-29 09:18 bigbigtree 阅读(1549) 评论(0) 推荐(1) 编辑
摘要: 先来说安装问题:1.首先呢,下载安装包:http://download.osgeo.org/gdal/gdal142.zip,解压到某目录下,如C:/gdal-1.4.2。2.然后,开始菜单-运行-cmd,即打开控制台窗口。进入VC6的安装目录下,(本人的安装路径为:C:/Program Files/Microsoft Visual Studio/VC98/bin/)输入:cd C:/Program Files/Microsoft Visual Studio/VC98/bin/(cd是用于进入目录的命令,记着中间得有空格),再输入VCVARS32.BAT,执行命令。3.回到安装包解压目录,即“ 阅读全文
posted @ 2011-11-29 09:16 bigbigtree 阅读(1405) 评论(0) 推荐(0) 编辑
摘要: 部分解题报告添加新内容,除了原有的“大致题意”和“解题思路”外,新增“Source修正”,因为原Source较模糊,这是为了帮助某些狂WA的同学找到测试数据库,但是我不希望大家利用测试数据打表刷题PS:部分题目的评论中也有给出了测试数据,未必完全,仅供参考这个POJ分类版本是被我修改过的,现在还在根据我做的题在逐步修改中有部分题目的分类不合理,所以根据我个人做题的心得对其进行了重新分类推荐文:1、一位ACMer过来人的心得 2、POJ测试数据合集OJ上的一些水题(可用来练手和增加自信)(poj1003,poj1004,poj1005,poj1207,poj3299,poj2159,poj273 阅读全文
posted @ 2011-11-28 11:42 bigbigtree 阅读(1742) 评论(0) 推荐(1) 编辑
摘要: 一。关于内存 1、内存分配方式 内存分配方式有三种: (1)从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。 (2)在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。 (3) 从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期由我们决定,使用非常灵活,但问题也最多。 2.内存使用错... 阅读全文
posted @ 2011-11-28 09:10 bigbigtree 阅读(235) 评论(0) 推荐(0) 编辑
摘要: http://www.iteye.com/topic/1116256sudo add-apt-repository ppa:ubuntu-wine/ppa sudo apt-get update sudo apt-get install wine1.3 wine --version ->wine-1.3.28 wget http://www.kegel.com/wine/winetricks sudo chmod +x winetricks sh winetricks msxml3 gdiplus riched20 riched30 ie6 vcrun6 vcrun2005sp1 vcr 阅读全文
posted @ 2011-11-27 21:00 bigbigtree 阅读(485) 评论(0) 推荐(0) 编辑
摘要: http://hi.baidu.com/%C9%CF%C9%C6%D6%AE%CB%AE%CB%AE/blog/index/4 阅读全文
posted @ 2011-11-25 14:58 bigbigtree 阅读(147) 评论(0) 推荐(0) 编辑