Linux C程序 数据类型,运算符和表达式

第三章  数据类型,运算符和表达式

1.1  C语言概述

C语言是一种结构化语言,它层次清晰,便于按模块化方式组织程序,易于调试和维护。同时,它还是一种面向底层的变成语言,可以直接访问内存的物理地址。

C语言是一种通用的程序设计语言,广泛应用于系统与应用程序开发,具有以下特点:

高效性:是指C语言生成目标代码的质量高,程序执行效率高,并且具有友好的可读性和编写性。

灵活性:C语言一共有32个关键字,9种控制语句,其书写形式*,语法不拘一格,可在原有语法基础上进行再创造,复合,从 而给程序员更多的想象和发挥的空间,从此可以充分展现出C语言的灵活性。

功能丰富:C语言中不仅具有多种数据类型,还可以使用丰富的运算符和自定义的结构类型,用它们来表达多种复杂的数据结构,完成所需要的丰富的功能。

表达力强:此特点主要体现在,C语言的语法形式与人们所使用的语言形式相似,书写形式*,结构规范,并且只需要简单的控制语句就可以轻松控制程序流程,满足繁琐的程序要求。

移植性好:由于C语言具有良好的移植性,从而是的C程序可以运行在不同的操作系统下,只需简单的修改一下即可,使用C语言可以进行跨平台的程序开发操作。

1.2  Linux C数据类型

Linux C的数据结构是以数据类型的形式出现的。所谓一个数据的“数据类型”,是该数据自身的一种属性,用于说明数据的类型,以告诉编译程序,要在内存中为该数据分配多少个字节的存储空间。不同类型的数据所占用的存储区域大小不同,这个区域的字节数就是这种数据类型的“长度”。

Linux C的数据类型具体分类如下图:

Linux C程序 数据类型,运算符和表达式

(1)基本类型是系统事先定义好的,不可再分割的类型。

(2)构造类型是有基本类型组成的更为复杂的类型,包括数据,结构体和共用体。

(3)指针类型是一种特殊的数据类型,指向某个量在内存中的存储地址

(4)空类型主要用于特殊指针变量和无返回值函数的说明。

注:C语言中没有字符串

       程序=算法+结构

1.3  常量与变量

1.3.1  常量

(1)值不能被改变的量,是程序中最基本的元素。

(2)通常包括整型,浮点型,字符型和枚举。

Linux C程序 数据类型,运算符和表达式

1.3.2  变量

(1)值在程序执行过程中可以发生变化

(2)必须遵循“先定义,再使用”的规则

Linux C程序 数据类型,运算符和表达式

1.3.3  标识符命名规则

(1)标识符是指用于标识类名,变量名,方法名,类型名和文件名等的有效字符序列,说白了就是一个名称。

(2)标识符只能由数字,字母和下划线组成,且不能以数字开头。

(3)标识符的长度可以是任何合适的数值,但各种编译器能够识别的数目有所不同,最好不超过8个。

(4)标识符中间不能包含空格。

(5)标识符不能是系统关键字(区分大小写

1.4  数据类型转换

(1)在运行中不同类型数据类型,需要先转换,再运算。

Linux C规定:在不同数据类型进行混合运算时,char必须转换成int,float必须转换成double。

(2)自动类型转换:

由低级数据类型转为高级,说白了就是低存储范围转为高存储范围。

char->int->long->float->double。

精确转换,不会造成精度损失。

(3)强制类型转换

将高级转化为低级的一种不安全方式,通常伴有精度损失。

float->int时,将会对浮点数进行四舍五入,而去除小数部分。

1.5  表达式及其注意事项

表达式:由运算符和操作数组成式子。

在进行表达式运算时,一定要注意数据类型之间的转换。

算术表达式的计算也要遵守运算符的优先级和结合性原则。进行表达式计算的具体步骤是:自左向右扫描表达式中的操作数,然后对比操作数的两次运算符。

运算符展示图:

Linux C程序 数据类型,运算符和表达式

注:非运算=》或运算=》与运算

输入:

int=》%d

float=》%f

double=》%lf

char=》%c

char*/char[]=》%s

long=》%ld