C语言与C语言的区别.pptx

上传人:莉*** 文档编号:87182086 上传时间:2023-04-16 格式:PPTX 页数:28 大小:148.55KB
返回 下载 相关 举报
C语言与C语言的区别.pptx_第1页
第1页 / 共28页
C语言与C语言的区别.pptx_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《C语言与C语言的区别.pptx》由会员分享,可在线阅读,更多相关《C语言与C语言的区别.pptx(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、C+程序与C程序对比#include using namespace std;int main()for(int i=0;i10;i+)coutHello!endl;return 0;#include int main()int i;for(i=0;i10;i+)printf(Hello!n);return 0;C+C第1页/共28页C语言与C+语言的区别变量定义位置结构体变量数据类型输入输出动态内存分配其他区别第2页/共28页1.变量定义位置C89要求所有变量都必须定义在块的最前部C+没有这个要求,可以在程序任意位置定义新的变量第3页/共28页2.结构体变量在C+中,struct结构体支持成

2、员函数的定义,C中不行。如果在C的struct中定义函数,编译时会显示一个“field function name declared as function”错误第4页/共28页2.结构体变量(续)/*ch3_10.c*/struct Aint a;int b();int main()struct A c;c.a=2;return 0;编译错误:编译错误:“ch3_10.c:5:error:field b declared as a function”C+标准可以通过编译标准可以通过编译第5页/共28页2.结构体变量(续)在C语言中,声明一个结构体类型A之后,使用下面的语句来定义结构体变量a:

3、struct A a;而C+语言中可以省略struct第6页/共28页3.数据类型C+中有bool(或boolean类型);C中没有这样的bool类型,均为数值类型!C编译器不能通过编译,C+编译器可以bool a;a=1;第7页/共28页4.输入输出 C中使用printf、scanf输入输出使用时必须包含stdio.h头文件int a;scanf(%d,&a);printf(您输入的数值是您输入的数值是%dn,a);第8页/共28页A.scanf()函数功能:从键盘读入指定格式的数据格式:scanf(控制字符串,输入项列表);注意:scanf中各变量一定是表示地址的标识符(加&)第9页/共2

4、8页控制字符串控制字符串有两部分组成:格式说明形式:%普通字符空格可打印字符第10页/共28页格式说明各格式字符及其意义:(详见C教程)d:输入一个十进制整数o:输入一个八进制整数x:输入一个十六进制整数f:输入一个小数形式的浮点数e:输入一个指数形式的浮点数c:输入一个字符s:输入一个字符串第11页/共28页空格在多个输入时,一般用空格或回车作为分隔符若以空格作为分隔符,当输入中包含字符类型时,可能产生非预期的结果scanf(%d%c,&a,&ch);输入:45 q输出:45 空格第12页/共28页空格(续)如下语句会有正确输出此处%d后的空格,就可以跳过字符q前的所有空格scanf(%d%

5、c,&a,&ch);输入:45 q输出:45 q第13页/共28页可打印字符看一个例子输入为:1,2,q可以得到 a=1,b=2,ch=q输入为:1 2 q除a的值为1外,对b与ch的赋值失败scanf(%d,%d,%c,&a,&b,&ch);第14页/共28页B.printf()函数功能:从缺省输出设备(一般为显示器)输出规定格式的字符串格式:printf(控制字符串,输入项列表);第15页/共28页控制字符串控制字符串有两部分组成:格式说明形式:%普通字符空格可打印字符第16页/共28页格式说明各格式字符及其意义:(详见C教程)c:按字符型输出o:按八进制输出d:按十进制输出x:按十六进制

6、输出u:按无符号整数输出f:按浮点型小数输出g:按e和f格式中较短的一种输出e:按科学计数法输出第17页/共28页普通字符普通字符:可打印字符主要是说明字符,按原样输出,支持汉字输出转义字符(例)不能直接打印,控制产生特殊的输出效果第18页/共28页普通字符(续)转义字符示例i=789,n=123,a=92.34567,且,且i为整型,为整型,n为长整型。为长整型。printf(%4dt%7.4fnt%lun,i,a,n);输出为:输出为:78992.3457 123第19页/共28页C语言输入输出总结输入输出可能是C和C+的最明显的区别C中用scanf(),printf()来完成输入输出操作

7、C+中全局对象cin、cout来输入输出,比C更方便,而且类型检查机制更加完善第20页/共28页C+中的使用方式new申请delete释放C中的使用方式malloc()申请free()释放5.动态内存分配第21页/共28页函数原型:void*malloc(long size);作用:在对内存中分配size各字节,并返回了指向这块内存首地址的指针如果分配失败,返回NULL返回指针为void*型的,要强制转换A.malloc()函数第22页/共28页函数原型:void free(void*FirstByte);作用:将之前用malloc申请的空间归还操作系统否则就导致内存泄漏编译器不会发现内存泄漏

8、这样的错误B.free()函数第23页/共28页C.函数的用法/*例例 3-11*/#include#include int main()int*p;if(p=(int*)malloc(sizeof(int)=NULL)printf(动态内存分配失败动态内存分配失败n);exit(1);第24页/共28页C.函数的用法(续)*p=100;printf(%dn,*p);free(p);p=NULL;return 0;第25页/共28页头文件:malloc和free被头文件stdlib.h包含C+中new和delete为关键字,故无需头文件包含使用:int*p=(int*)malloc(sizeof(int);int*p=new int;与C+的几点区别第26页/共28页6.其他区别常量表示方法不同C语言不支持引用的概念,而C+支持注释不同,C89不支持单行注释(+i)+在C中不合法(a=3)=4在C中不合法不能在for循环头部定义变量第27页/共28页感谢您的欣赏!第28页/共28页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > PPT文档

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁