摘要: 对方是否 阅读全文
posted @ 2013-11-30 09:55 斯涵 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 【警告】 1.错误地在其他函数的作用域内编写函数原型; 2.没有为那些返回值不是整型的函数编写原型; 3.把函数原型和旧时风格的函数定义混合使用; 4.在va_arg中使用错误的参数类型,导致未定义的结果; 【提示】 1.在函数原型中使用参数名,可以给使用给函数的用户提供更多的信息; 2.抽象数据类型可以减少程序对模块实现细节的依赖,从而提高程序的可靠性; 3.当递归定义清晰地有点可以补偿它的效率... 阅读全文
posted @ 2011-12-02 22:48 斯涵 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 1.内存和地址 (1)内存中的每个位置由一个独一无二的地址标识; (2)内存中的每个位置都包含一个值; (3)变量名字与内存地址相对应,由编译器为我们实现,变量给了我们更方便的方法记住地址(硬件仍然通过地址访问内存位置); 【注】在某些要求边界对齐(boundary alignment)的机器上,整型值存储的起始位置只能是某些特定的字节,通常是2或者4的倍数; 2.值和类型 不能简单地通... 阅读全文
posted @ 2011-12-02 10:32 斯涵 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 一、操作符(C语言操作符及其优先级) 阅读全文
posted @ 2011-12-01 21:03 斯涵 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 一、基本数据类型 1.1整型家族包括字符、短整型、整型和长整型,他们都分为有符号(singed)和无符号(unsigned) 【注】在需要考虑程序的可移植性的时候,应该注意个数据类型所代表的范围。 (1)整型字面值:字面值(literal)这个术语是字面值常量的缩写(是一种制定了自身的值且不允许改变的实体); (2)枚举类型:就是指它的值为符号常量而不是字面值的类型; 1.2浮点类型家族包括... 阅读全文
posted @ 2011-11-30 22:04 斯涵 阅读(255) 评论(0) 推荐(0) 编辑
摘要: 一.C的struct与C++的class区别 (1)结构没有无参构造函数,结构不能被继承; (2)结构是值类型,而类是引用类型; (3)结构在数据参数方面效率更高,简单数组的应用中成本很低。类再方法运算方面更有优势,在抽象多级别时是最佳选择; (4)在C语言中,结构只能定义成员变量不能定义成员函数; 二.C++中struct与class的区别 (1)class中默认的成员访问权限是private的... 阅读全文
posted @ 2011-11-29 16:09 斯涵 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 面对一个人的大型C/C++程序时,只看其对struct的使用情况我们就可以对其编写者的编程经验进行评估。因为一个大型的C/C++程序,势必要涉及一些(甚至大量)进行数据组合的结构体,这些结构体可以将原本意义属于一个整体的数据组合在一起。从某种程度上来说,会不会用struct,怎样用struct是区别一个开发人员是否具备丰富开发经历的标志。一.简化设计 经验不足的开发人员往往将所有需要传送的内容依... 阅读全文
posted @ 2011-11-29 15:21 斯涵 阅读(1066) 评论(0) 推荐(0) 编辑
摘要: 结构体可以看做是一种自定义的数据类型,它还有一个很重要的特性,就是结构体可以相互嵌套使用,但也是有条件的,结构体可以包含结构体指针,但绝对不能在结构体中包含结构体变量。 链表的学习不像想象的那么那么容易,很多人学习到这里的时候都会碰到困难,很多人也因此而放弃了学习,在这里我说,一定不能放弃,对应它的学习我们要进行分解式学习,方法很重要,理解需要时间,不必要把自己逼迫的那么紧,学习... 阅读全文
posted @ 2011-11-28 22:01 斯涵 阅读(3184) 评论(0) 推荐(0) 编辑
摘要: 一、概述 是一种在计算机编程语言中用来声明自定义数据类型,配合各种原有数据类型来达到简化编程目的的类型定义关键字。typedef 声明,简称 typedef,为现有类型创建一个新的名字。比如人们常常使用 typedef 来编写更美观和可读的代码。所谓美观,意指 typedef 能隐藏笨拙的语法构造以及平台相关的数据类型,从而增强可移植性和以及未来的可维护性。二、用法 1、创建平台无关类型 typedef 声明有助于创建平台无关类型,甚至能隐藏复杂和难以理解的语法。typedef 使用最多的地方是创建易于记忆的类型名,用它来归档程序员的意图。类型出现在所声明的变量名字中,位于 '' 阅读全文
posted @ 2011-11-25 11:29 斯涵 阅读(601) 评论(0) 推荐(0) 编辑
摘要: 左值(lvalue)和右值(rvalue)最先来源于编译。在C语言中表示位于赋值运算符两侧的两个值,左边的就叫左值,右边的就叫右值。 C/C++语言中可以放在赋值符号左边的变量,即具有对应的可以由用户访问的存储单元,并且能够由用户去改变其值的量。或者说左值是代表一个内存地址值,并且通过这个内存地址,就可以对内存进行读并且写(主要是能写)操作,这也就是为什么左值可以被赋值的原因了。相对应的还有右值:当一个符号或者常量放在操作符右边的时候,计算机就读取他们的“右值”,也就是其代表的真实值,既指的是引用了一个存储在某个内存地址里的数据。简单来说就是,左值相当于地址值,右值相当于数据值。 例如: i. 阅读全文
posted @ 2011-11-24 16:54 斯涵 阅读(416) 评论(0) 推荐(0) 编辑