《C基本概念.docVIP

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《C基本概念

一.C++语法的外围基础 ⒈新的语法规定与新算符 文件扩展名的规定 标准的C++源程序文件扩展名为.CPP,头文件扩展名为.H或.HPP。 标准输入和输出符号 为便于使用,C++语法规定: 标准输出算符:cout“输出内容”…; 标准输入算符:cin“输入内容”…; 上述算符实际上是一种函数,由iostream.h头文件支持。 动态内存分配算符 OO程序对内存空间的动态分配的频繁程度要求简化语言的相关语法的格式。C++语法规定new算符等效于C语言中mal1oc一类的函数功能;free算符等效于C语言中free一类的函数功能。其格式为: 指向对应类型的指针=new 类型描述符; delete 指向对应类型的指针; 例1:仅占一个单元空间: int *p; p=new int; /*意即占一个字长*/ 例2:仅占一个单元空间且赋初值: int *p; p=new int(20); /*意即占一个字长且赋予初值20*/ 例3:占用多个单元可按数组或指针使用: int *p; p=new int [20]; /*意即占20个字长单元*/ delete [2]p; 引用类型(References) 在一个程序中用不同的变量名指向同一地址的同一内容的数据类型描述称为引用。这里的引用数据类型名又称为别名。其语法格式是: 类型名& 引用型函数名或变量名[=前已声明的(常)变量名]; 例: int i; int j=i; /*j是i的别名*/ j=1; i++; couti; /*显示为:2*/ 引用类型的最大好处是不单独占用额外内存,在实现上是用指针构造的。当在两个函数相互利用参数访问时,可以利用引用类型大量减少的必须经由堆栈实现的数据交换的不足,同时也可以支持双向的内存写操作。 例: #includeiostream.h void t(int); void main() { int i=0; t(i); cout”i=”i; /*显示1*/ } void t(int ip) {coutip;ip++;} /*显示0*/ 推论的引出:引用类型的内部机制既然是指针,应能够用做函数的返回类型。试说出下例的输出结果: 例: #includeiostream.h int t(int); void main() { int i=0; cout++t(i);/*显示:?*/ } int t(int x) { return ++x; } 声明语法与行注释 C++语法规定声明语句的位置可以很灵活,即需即用。 例: int i=0; i++; for(int j=0;j10;j++){…} j=0; 行注释故名思意仅对一行做注释,符号为:// 常量 与C语法不同的是常量可以用于变量的声明语句。 例: const int i=10; char t[i]; ⒉函数的新变化 声明的变化 C++语言中的一个函数要经过先声明(函数的主要特征—往返传送的数据类型的数量和类型)、再定义(函数的具体过程编写)和函数调用( Function Call)三个步骤。而且C++语言中不再支持缺省返回类型。此外,C++语言中的函数还出现了下述新变化: ⑴内联函数(Inline function) 在函数的声明之前插入“inline”关键字后,该函数便称为内联函数。相对应地处理是C++编译器将编译后得到的内联函数的全部二进制代码全部插入到主程序中的函数调用处,以提高调用速度。 例: #includeiostream.h inline int add(int,int); void main() { cout”2+2=”add(2,2); cout”100+50=”add(100,50); } inline int add(int x,int y) {return (x+y);} ⑵缺省参数(Default parameter) 在C++程序中的两个函数发生相互调用时,实际传递的实参数量可以少于形参数量,而缺少的形参值用函数声明时定义的缺省值取代。此种函数的参数声明便称为缺省参数。C++语法规定缺省参数的声明必须自右向左排列。 例: # includeiostream.h int sub(int x=1,int y=1) { return x-y;} void main() {cout sub() sub(5)sub(5,8);} ⑶重载(Overload) 在C++语言中,将含有不同的数量或类型的参数的一系列同名函数称为重载函数。重载函数是软件重用的一种具体实现手段。 例: #includeiostream.h void dsp(int i){co

文档评论(0)

lisufan + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档