首页 > 知识点讲解
       基本数据类型
知识路径: > 嵌入式系统软件基础知识 > 嵌入式系统程序设计 > 嵌入式程序设计语言 > 嵌入式C/C++程序设计要求 > C程序设计基础 > C程序基础 > 
被考次数:5次     被考频率:中频率     总体答错率:56%     知识难度系数:     
相关知识点:26个      
        在C程序中,数据都具有类型,通过数据类型定义了数值范围以及可进行的运算。
        C的数据类型可分为基本数据类型(内置的类型)和复合数据类型(用户定义的类型)。内置的类型是指C语言直接规定的类型,用户定义的类型在使用以前必须先定义,枚举、结构体和共用体类型都是用户定义类型。
        C的基本数据类型有字符型(char)、整型(int)、浮点型(float、double),如下表所示。
        
        C基本数据类型
        void类型也是一种基本类型,void不对应具体的值,只用于一些特定的场合,例如用于定义函数的参数类型、返回值、函数中指针类型等进行声明,表示没有或暂未确定类型。
        C程序中的数据以变量、常量(包括字面量和const常量等)表示,它们都具有类型属性。
               变量
               变量本质上指代存储数据的内存单元,变量的定义(definition)指示编译器为变量分配存储空间,还可以为变量指定初始值。在一个C程序中,一个变量有且仅有一个定义。当C程序文件中需要引用其他程序文件中定义的变量时,就需要进行声明。
               变量声明(declaration)用来表明变量的类型和名字,当定义变量时即声明了它的类型和名字。可以通过使用extern关键字声明变量名。
               例如,下面是对变量a的定义、b的声明。
               
               在嵌入式C程序设计中,用volatile修饰变量时,即告知编译器该变量的值无任何持久性,不要对它进行任何优化。因为用volatile定义的变量可能会在其所在程序外被改变,因此需要从其所在的内存位置或设备端口重新读取,而不是使用其寄存器中的缓存值。
               字面量
               字面量(literal)是指数据在源程序中直接以值的形式呈现,在程序运行中不能被修改,表现为整型、浮点型和字符串类型。
               默认情况下,整型字面量以十进制形式表示,前缀0表示是八进制常数,前缀0x或0X表示是十六进制常数。同样,一个整型常数也可以加U或u后缀,指定为是unsigned类型。
               以0作为八进制常数的前导符号并不符合人们的习惯,可能造成潜在的程序错误。
               例如,
               
               浮点型字面量总是假定为double型,除非有字母F或f后缀,才被认为是float型;若有后缀L或1,则被处理为long double型。实型常量也可以表示成指数形式,例如0.004可以表示成4.0E-3或4.0e-3,其中E或e代表指数。
               字符字面量用一对单引号括起来,例如‘A’。对于不能打印的特殊字符,可以用它们的编码指定。还有一些转义字符,如’\n'表示换行、’\r'表示回车等。
               用双引号括起来的零个或多个字符则构成字符串型字面值。例如,
               
               const常量和宏定义常量
               常量修饰符const的含义是其所修饰的对象为常量(immutable)。若一个变量被修饰为const,则该变量的值就不能被其他语句修改。例如:
               
               C程序中常用宏定义的方式在源程序中为常量命名。例如:
               
               const常量与宏定义常量有所不同:const常量有数据类型,而宏定义常量没有数据类型。编译器可以对前者进行类型安全检查,而对后者只进行字符替换,不进行类型安全检查,并且在字符替换可能会产生意料不到的错误。有些集成化的调试工具可以对const常量进行调试,但是不能对宏常量进行调试。在C++程序中使用const常量。
               标识符和名字的作用域
               在C程序中使用的变量名、函数名、标号以及用户定义数据类型名等统称为标识符。除库函数的函数名由系统定义外,其余都由用户自定义。
               C语言的标识符一般应遵循如下的命名规则:
               .标识符必须以字母a~z、A~Z或下画线开头,后面可跟任意个字符,这些字符可以是字母、下画线和数字,其他字符不允许出现在标识符中;
               .标识符区分大小写字母;
               .标识符的长度在C89标准中规定31个字符以内,在C99标准中规定63个字符以内;
               .C语言中的关键字(保留字)有特殊意义,不能作为标识符;
               .标识符最好使用具有一定意义的字符串,便于记忆和理解。变量名一般用小写字母,用户自定义类型名的开头字母大写。
               通常来说,一段程序代码中所用到的名字并不总是有效和可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域。同一个名字在不同的作用域可能表示不同的对象。
               C程序中的名字有块作用域、函数作用域、函数原型作用域和文件作用域之分,作用域可以是嵌套的。
               一般情况下,尽可能将变量定义(声明)在最小的作用域内,并且为其设置初始值。
 
本知识点历年真题:
隶属试卷 题号/题型 题干 难度系数/错误率
   2015年下半年
   嵌入式系统设计..
   上午试卷 综合知识
第59题
选择题
下面的一段C程序中,循环体语句(59)退出循环。

54%
   2013年下半年
   嵌入式系统设计..
   上午试卷 综合知识
第62题
选择题
执行下面的一段C程序后,变量result的值应为(62)。(08年55)(09年49)

49%
>>  更多  本知识点历年真题
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有