C的学习之路——二

常量与变量

常量:在程序运行期间其值不能发生改变

整型常量

实型常量

字符型常量

字符串常量

变量:在程序运行中其值可以改变的量。

变量必须先定义,后使用,在创建时需要指出变量的数据类型与变量的名称,一般放在函数的开头部分

习惯上使用小写字母表示,以增加可读性

变量在参与运算之前必须先进行赋值,在为赋值的情况下参与运算或输出是无意义的

通过变量名引用变量值

分别赋值

被赋值的变量必须是单个变量,且必须在赋值运算符的左边

变量可被多次赋值,但是每次赋值后,变量的值都会被新值覆盖

当表达式值的类型与被赋值变量的类型不一致时,系统会自动的将表达式的值转换为被赋值变量的数据类型,然后在赋值给变量

赋值语法:变量 = 表达式/值

数据类型

关键字

最初K&R给出的关键字

C90增加的关键字

C99增加的关键字

int

signed

_Bool

long

void

_Complex

short

 

_Imaginary

unsigned

 

 

char

 

 

float

 

 

double

 

 

数据类型解释

int类型(可与long、short、unsigned配合使用)

实型变量

float 单精度

double 双精度

char 字符型 赋值:变量名=’值’ 注意值只能为单个字符

在输出时,一个字符型数据既可以按字符形式输出,也允许按整型形式输出

允许对字符数据进行算数运算,此时就是对他们的ASCII码值进行算数运算

_Bool 布尔型

复数类型前面的关键字表示复数的实部,后为虚部

float  _Complex

double  _Complex

long double _Complex

虚数类型

       float  _Imaginary

double  _Imaginary

long double_Imaginary

       注意:可利用typedef说明一种新的类型名  如unsigned short int 这样的数据类型在实际使用中,输入比较麻烦,因此可利用typedef关键字为其定义一个别名

       语法格式 typedef 原类型名 新类型名;

类型转换 运算时,可能会有不同之间的数据类型进行运算,此时可进行类型转换

隐式类型转换 由编译系统自动完成

参与运算的数据类型不同时,先转换为同一类型,然后运算

转换象数据长度增加的方向进行,以保证不降低精度

char型和short型参与运算时,将其先转换为int型

在赋值运算中,赋值运算符两边的数据类型不同时,赋值运算符右边的数据类型转换为左边的数据类型。如果左边的数据类型的长度小于右边,则将丢失一部分数据,因此会降低精度,丢失的部分按四舍五入向前舍入

类型转换的级别从高到低为long double、double、float、unsigned long long、long long、unsigned long、long、unsigned int、int。注意当long和int的大小相同时,unsigned int的级别比long高

强制(显式)类型转换

可以利用强制类型转换运算符将一个表达式的值转换为所需的类型。

语法格式:(类型名)(表达式)

注意:在进行强制类型转换得到的是一个所需类型的中间量,操作数的值并不发生改变,改变的只是表达式值的类型;即,原表达式的类型为发生变化



下节链接 https://blog.csdn.net/chaolingw/article/details/79826696




猜你喜欢

转载自blog.csdn.net/chaolingw/article/details/79810716