alaigle

prepare yourself to change the world!

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2012年11月9日

摘要: 本人的博客全部转到www.alaiblog.com 阅读全文
posted @ 2012-11-09 13:39 alaigle 阅读(181) 评论(0) 推荐(0) 编辑

2012年9月20日

摘要: 来源:alaiblog其实也许大家都知道,也许曾经我也知道(但是我现在确实忘记了),但是我想对于一部分人来说,可能还是会犯跟我一样的错误,所以在记录下.可能大家经常在vc 下面进行编码,经常使用bool 类型也不会出现错误,但是c语言标准是没有bool 类型.这是我昨天在linux 下面写代码时发现的,有一个函数返回bool 类型,编译一直出现错误.咨询了一下牛人,上网查了下,才知道.C语言中的bool 类型,一般是自己定义1 #define TRUE 1 #define FALSE 02 enum bool{false,true};3 #define TRUE (1==1) #define 阅读全文
posted @ 2012-09-20 15:16 alaigle 阅读(850) 评论(0) 推荐(0) 编辑

2012年9月3日

摘要: 以前学习C语言的时候觉得数组和指针结合在一起的时候真的是地狱,很容易就搞混淆了,最近看了C语言深度解剖有了一点理解,好好的总结一下吧。其中很多的知识都是因为我们在学习的过程中没有仔细的去分析导致的。同时我体会到了我们在写代码的过程中应该更多的注重代码的调试,而不是换新的代码,只有不断的调试才能知道其中问题所在。 数组和指针之间本来没有什么关系,数组就是数组,指针就是指针,之间并没有关系,只是因为某些相似特性使得我们在分析的过程中存在较大的迷惑。 数组就是一个连续存储空间的存储的数值。指针就是指针,指针变量所在内存中存储的值都是地址。 C 语言中数组的大小必须是一个常数,但是不能认为采... 阅读全文
posted @ 2012-09-03 14:37 alaigle 阅读(342) 评论(0) 推荐(0) 编辑

2012年8月10日

摘要: 1.3 ldd 和 ldconfigldd 是用来检查可执行文件所需要的共享库。例如:$ ldd /bin/lslibtermcap.so.2 => /lib/libtermcap.so.2 (0x4001c000)libc.so.6 => /lib/libc.so.6 (0x40020000)/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)我们在 /bin/ls 程序上运行 ldd 命令,就可以检查该程序所使用的共享库。注意在 ldd 命令打印的结果中,“=>”左边的表示该程序需要连接的共享库之 so 名称,右 阅读全文
posted @ 2012-08-10 11:42 alaigle 阅读(344) 评论(0) 推荐(0) 编辑

2012年8月6日

摘要: 一、在应用程序需要连接外部库的情况下,linux默认对库的连接是使用动态库,在找不到动态库的情况下再选择静态库。使用方式为:gcc test.cpp -L. -ltestlib如果当前目录有两个库libtestlib.so libtestlib.a 则肯定是连接libtestlib.so。如果要指定为连接静态库则使用:gcc test.cpp -L. -static -ltestlib使用静态库进行连接。二、当对动态库与静态库混合连接的时候,使用-static会导致所有的库都使用静态连接的方式。这时需要作用-Wl的方式:gcc test.cpp -L. -Wl,-Bstatic -ltestl 阅读全文
posted @ 2012-08-06 15:26 alaigle 阅读(1584) 评论(0) 推荐(0) 编辑

2012年6月26日

摘要: 总所周知,Linux动态库的默认搜索路径是/lib和/usr/lib。动态库被创建后,一般都复制到这两个目录中。当程序执行时需要某动态库,并且该动 态库还未加载到内存中,则系统会自动到这两个默认搜索路径中去查找相应的动态库文件,然后加载该文件到内存中,这样程序就可以使用该动态库中的函数,以及该动态库的其它资源了。在Linux 中,动态库的搜索路径除了默认的搜索路径外,还可以通过以下三种方法来指定。方法一:在配置文件/etc/ld.so.conf中指定动态库搜索路径。可以通过编辑配置文件/etc/ld.so.conf来指定动态库的搜索路径,该文件中每行为一个动态库搜索路径。每次编辑完该文件后,都 阅读全文
posted @ 2012-06-26 13:41 alaigle 阅读(573) 评论(0) 推荐(0) 编辑

2012年6月19日

摘要: 一般来说,配置交叉编译工具链的时候需要指定编译工具的路径,此时就需要设置环境变量。例如我的mips-linux-gcc编译器在“/opt/au1200_rm/build_tools/bin”目录下,build_tools就是我的编译工具,则有如下三种方法来设置环境变量:1、直接用export命令:#export PATH=$PATH:/opt/au1200_rm/build_tools/bin查看是否已经设好,可用命令export查看:[root@localhost bin]#exportdeclare -x BASH_ENV="/root/.bashrc"declare 阅读全文
posted @ 2012-06-19 12:01 alaigle 阅读(28759) 评论(0) 推荐(0) 编辑

摘要: 环境:主机(host):windowsXP虚拟机:VirtualBox设置VirtualBox共享文件夹之前需要安装VirtualBox Guest Additions.如果没有安装先安装这个。共享文件夹就是使主机的wendows和客户机linux能彼此共享文件。在当前的架构情况下,需要在主机即windows上设一个目录来做共享目录,我 是把D盘的sharelinux目录做为共享目录其路径为D:\sharelinux。下面就介绍具体如何设置共享文件夹。参考 VirtualBox的帮助文档(在virtual guest additions那一节里),我发现有以下几个步骤就可以完成共享文件夹的设置 阅读全文
posted @ 2012-06-19 11:09 alaigle 阅读(539) 评论(0) 推荐(0) 编辑

2012年6月5日

摘要: 原文http://patmusing.blog.163.com/blog/static/135834960201038113714199/在编写C++程序的时候,偶尔需要用到前置声明(Forward declaration)。下面的程序中,带注释的那行就是类B的前置说明。这是必须的,因为类A中用到了类B,而类B的声明出现在类A的后面。如果没有类B的前置说明,下面的程序将不同通过编译,编译器将会给出类似“缺少类型说明符”这样的出错提示。代码一:// ForwardDeclaration.h#include <iostream>using namespace std;class B; 阅读全文
posted @ 2012-06-05 14:14 alaigle 阅读(14576) 评论(1) 推荐(4) 编辑

2012年5月31日

摘要: 原文地址http://blog.csdn.net/guirenwang/article/details/2611355this指针只能在一个类的成员函数中调用,它表示当前对象的地址。下面是一个例子: void Date::setMonth( int mn ) { month = mn; // 这三句是等价的 this->month = mn; (*this).month = mn; }1. this只能在成员函数中使用。 全局函数,静态函数都不能使用this。 实际上,成员函数默认第一个参数为T*const register this。如: class A{public... 阅读全文
posted @ 2012-05-31 11:47 alaigle 阅读(388) 评论(0) 推荐(0) 编辑