- 博客(16)
- 资源 (6)
- 收藏
- 关注
原创 由多次引进头文件引起的“血案”
今天下午继续写程序,调试程序。出现了error: redefinition of ‘struct LNode’; error: redefinition of typedef ‘ElemType’等,重复定义的错误。开始也调试了很久,以为是定义这边的问题,后来,回头想想,看看以前的文件,include进来的文件,只有一个,如果多次引进(或者说包含)头文件的话,就会引起重复定义的错误。
2011-11-23 16:58:48 1271
原创 传入参数为NULL的悲剧
(一) 这个错误我调试了很久,现在些日志以示警戒。我写的是一个普通的链表。但是出现了很多让我苦笑不得的错误。最后的原因归结为:我传入了NULL指针给InitList()函数。实在不应该呀。昨天看书的时候,看到给printf()传入NULL 指针的悲剧,没有想到我就犯了这个错误。废话少说,现在上实例:原来的错误: int main(int argc, char** argv)
2011-11-23 11:37:44 2538
转载 Ubuntu下解压tar软件包的方法
把tar解压的也转过来吧。使用root限权解压:tar.gz包的解压方法:sudo tar zxvf file.tar.gzbz2包的解压方法一:sudo tar jxvf file.tar.bz2bz2的解压方法二:sudo bzip2 -de file.tar.bz2|tar xvf file.tar.bz2tar.Z包的解压方法:s
2011-11-21 22:17:29 9281 1
转载 ubuntu解压命令全览
今天晚上又搞了下命令之类的。解压的命令收集了一下,感觉下面这个听全的。所以留下来以后自己看看也很好哦。转于:http://blog.csdn.net/zad522/article/details/2770446 感谢他的总结。.tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)
2011-11-21 22:08:48 625
原创 Expert C Programming 总结 (六)
这是第九章的内容了。哈哈。看得比较慢拉。但是还是得看下去哈。这本书实在是写得太好了。 1. 声明本身还可以进一步分成三种情况: (1)外部数组的声明。 (2)数组的定义(记住,定义是声明的一种特殊情况,它分配内存空间,并可能提供一个初始值)。 (3)函数参数的声明。 2. 所有作为函数参数的数组名总是可以通过编译器转换为指针。
2011-11-21 20:57:42 480
原创 关于:warning: implicit declaration of function 的总结
经历了多次的这样的warning后,我在网上查找了这方面的资料,发现有个人总结的还可以吧。所以把它贴出来。供自己以后查阅。 发现主要有2种情况会产生这种warning 1 没有把函数所在的c文件生成.o目标文件 2 在函数所在的c文件中定义了,但是没有在与之相关联的.h文件中声明
2011-11-21 15:17:14 2751
转载 ubuntu10.04下安装fcitx小企鹅输入法,配置,美化及删除多余码表
今天晚上装了很久的fcitx,貌似还是没有到达我的要求。还是不爽。但是这个输入法还是比前两个还是要快些拉。下面这个方法还是比较全的。希望转过来对大家有帮助。转于:http://hi.baidu.com/whucaobin/blog/item/d2e91f457c1a6a2acffca38a.html一、删除系统自带的ibus输入法:ubuntu10.04 自带了
2011-11-20 22:30:11 1322
转载 改变Ubuntu11.04和Window启动顺序的最简单的方法
我想该下我的启动菜单。所以搜索了一下这方面的资料。感觉下面这篇写的挺全的,符合我的需求。转载过来,供给需要的人看看。下面是他的文章:最近装了Ubuntu10.10,因为之前有Windows7等系统,所以Ubuntu装上后出现启动菜单,默认Ubuntu启动。网上找了好多修改启动选项的方法,众说纷纭,现在总结如下:一、能上网情况下的最好方法:安装startupmanager——图形启动
2011-11-19 19:23:06 580
原创 Expert C Programming 总结(五)
1. 标准C语言具有八进制,十进制和十六进制常量,但是没有二进制常量。 2. 警惕! 真正值得注意之处———参数也会被提升!另一个会发生隐式类型转换的地方就是参数传递。这就是为什么单个的printf()格式字符串%d能适用用于几个不同类型,short,char或int,而不论实际传递的是上述类型的哪一个。函数从堆栈中(或寄存器中)取出来的参数总是int类型。 3. 隐式
2011-11-18 15:40:58 531
原创 Expert C Programming 总结(四)
1. 80386在80286的基础上增加了两种新的地址模式:32位的保护模式和虚拟的8086模式。 2. 今天,计算机系统结构的真正挑战不在于内存的容量,而是内存的速度。 3. 虚拟内存只是对多层存储进行扩充,使用磁盘而不是主存来保存进行进程的映像,所以说他们是同一种策略。 4. SunOS中的进程执行于32位地址空间。操作系统负责具体细节,使每个
2011-11-17 17:27:03 641
原创 Expert C Programming 总结(三)
1. 准则:不要让程序中的任何符号成为全局的,除非有意把它们作为程序的接口之一。 2. 编程语言理论的经典对立之一就是代码和数据的区别。蠕虫的攻击方法的原理就是把数据转换为代码。代码和数据的区别也可以认为是编译时和运行时的分界线。 3. 在unix中,段表示一个二进制文件相关的内容块。 4.数据段包含经过初始化的全局和静态变量以及它们的值。bbs段
2011-11-13 18:20:13 516
原创 Expert C Programming总结(二)
1. “声明的形式和使用的形式相似”这种用法可能是C的独创。至今为止一个比较好的声明指针的方法是: int &p; 它至少提示p 是一个整形数的地址。这种语法现已被C++采纳,用于表示参数的传址调用(引用)。 2. 如果想要把什么东西的类型强制转换为指向数组的指针,就不得不使用下面的语句来表示这个强制类型转换: char (*j) [20];
2011-11-13 12:02:11 508
转载 Sizeof与strlen
深入理解Sizeof与strlen的本质简单的讲,sizeof 是求变量或类型的存储长度。而strlen 是统计字符串中字符的个数,不包括终止符‘\0’。sizeof 是求得实体(就是"()"里面包含的变量或者类型字)的字节单位长度。按照类型来判断;strlen 是求得字符的长度,累加搜索,直到 \0截至为止。 sizeof(xxx)是个保留字,用来求分配给xxx的内存
2011-11-13 10:02:06 648
转载 如何引用一个已经定义过的全局变量 与 全局变量可不可以定义在可被多个.C文件包含的头文件中
1.如何引用一个已经定义过的全局变量? 答:extern 可以用引用头文件的方式,也可以用extern关键字,如果用引用头文件方式来引用某个在头文件中声明的全局变理,假定你将那个编写错了,那么在编译期间会报错,如果你用extern方式引用时,假定你犯了同样的错误,那么在编译期间不会报错,而在连接期间报错。 2.全局变量可不可以定义在可被多个.C文件包含的头文件中?为什么?
2011-11-12 20:23:04 1199
原创 《Expert C Programming》总结(一)
1. 关键字const并不能把变量变成常量! 在一个符号前加上const限定符只是表示这个符号不能被赋值。也就是它的值对于这个符号来说是只读的,但它并不能防止通过程序的内部(甚至是外部)的方法来修改这个值。const最有用之处就是用它来限定函数的形参。 2. 算术转换。如果其中一个操作数的类型是:unsigned,那么另一个操作数被转换为:unsigned,计算结果的类
2011-11-12 20:21:39 714
原创 char * 指针
经典重现:#include #include #include int main(){ char *str = "hello,world."; int len = strlen(str); char *des = (char *)malloc(len+1); char *s = &str[len-1]; char *d = des; wh
2011-11-04 18:01:03 465 1
ML_peer_certificate_patch_A
2016-02-29
ML_Octave_400_patch
2016-02-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人