下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——C语言声明学习之初级篇C语言声明学习之初级篇
C语言为我们定义了四种根本数据类型:整型,浮点型,指针以及聚合类型数组和布局体等,在此根基上,我们就可以声明变量。我们平日经常说定义一个某种类型的变量,其实这样说不切当,理应说是声明变量。
变量声明的根本形式是:
说明符一个或多个声明表达式列表
譬如说:inta,b,c,d;
C语言中对指针的声明对比有代表性,我们来看一下:
譬如声明一个指向int型的指针a:int*a;
这个语句表示表达式*a产生的结果类型是int,而我们又知道*操作符执行的是间接访问操作,所以可以推断a断定是一个指向int的指针。
C语言在本质上是一种自由形式的语言,它给了程序员很大的'空间,我们同样可以这样写:int*a,这个声明与int*a时一个意思,而且貌似更为领会,a被声明为类型为int*的指针实那么不然,这会诱导我们这样声明三个指向int型的指针:
int*a,b,c;
可能你会很自然的以为这条语句把三个变量a、b、c都声明为指向整型的指针,但是事实上我们被它的形式愚弄了,星号实际上是表达式*a的一片面,只对这个标识符有用,a是一个指针,但是b和c都只是普遍的整型而已,要声明三指针,这样写是可以的:
int*a,*b,*c;
从这个简朴的例子我们可以看出C语言的声明规矩多么具有迷惑性,呵呵,这也是C语言饱受批*的地方之一,但这抉择与语言本身的设计哲学,我们无法变更,要想用好C语言,我们务必掌管它的语法规矩。
我们再看一个例子:
intfun;
我们都知道它把f声明为一个函数,它的返回值是一个整数。
假设这样写:
int*fun;
要想推断出它的含义,我们务必知道*fun是如何求值的。首先执行的是函数调用操作符,由于它的优先级高于间接访问操作符*,所以fun是一个函数,它的返回值类型是一个指向整型的指针。
再看一个更为好玩的声明:
int*fun;
这个声明有两对括号,每对括号的含义不同。其次对括号是函数调用操作符,但是第一对只起到聚组的作用。它导致间接访问在函数调用之前举行,使fun是一个函数指针,它所指向的函数返回一个整型值。
那么现在这个声明理应很轻易分析出来了
int**fun;
fun还是一个函数指针,只是所指向的函数返
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 危重症患者的静脉输液管理
- 护理文书的绿色环保
- 护理教学实践技能比赛技巧
- 金太阳陕西省2026届高三下学期3月联考地理(26-287C)+答案
- 护理学考研:妇产科护理学考点梳理
- 基于情感化的产品设计课题研究
- 客户服务中的人性化服务策略
- 旅游行业产品策划与推广的面试要点
- 零售业门店经理选拔面试流程
- 旅游电商客服务流程优化及面试策略
- 四川党校在职研究生考试真题及答案
- 《汽车底盘构造与维修(第三版)》 课件 项目五 制动系构造与维修
- 2025年税务局信息技术专员招聘考试题库
- 北师大版七年级数学下册-第一章-名校检测题【含答案】
- 【《汽车排气系统三维建模及有限元仿真分析》17000字(论文)】
- 急危重症快速识别与急救护理
- 2026年新高考数学专题复习 103.马尔科夫链讲义
- 初中数学备课教案模板
- 浙江建设监理管理办法
- 运输公司废物管理办法
- 水库安全度汛培训课件
评论
0/150
提交评论