C语言学习日志 — 初步知识

  • Post author:
  • Post category:其他

标识符、常量和变量

标识符

分类:关键字、预定义标识符、用户标识符;

命名规则:可以由字母、数字和下划线组成,并且第一个字符必须是字母或下划线;

位:内存中最小的单位,也称二进制数

字节:8个二进制位

若干字节组成一个字,用一个字来存放一条机器指令或一个数据;一个字含多少字节随机器不同而不同;

通常把一个字节中最右边一位称为最低位,最左边一位称为最高位;

有符号整型:最高位(最左边)来存放整数的符号,称为符号位(符号位正数为0,负数为1);

  存储形式 最值(两字节为例)
正整数 原码 最大值0111111111111111   32767
负整数 补码 最小值1000000000000000   -32768
无符号整数 全部用来存放整数  

求补码:

(1)先求原码的反码:除符号位外各位取反,即1变成0,0变成1。

(2)把所得来的反码加1,即得到原码的补码。

补码二进制转换成十进制(负整数)步骤:

(1)除符号位外各位取反;

(2)将所得二进制转换成十进数;

(3)将所求得的整数在减1;

实型数据

实型常量:1.小数形式

                  2.指数形式(“e”或“E”后跟一个整数来表示以10为的幂数,字母“e”或“E”之前必须要有数字,且后面数字必须为整数)

实型变量
  单精度 双精度
类型名 float double
存储单元 4字节 8字节
表示范围 -10的38次方~10的38次方 -10的308次方~10的308次方

注意:

  1. double 表示的数字比float 表示的要精确得多;
  2. 在VC中,所有float 类型在运算中都自动转换成double数据;
  3. 在程序中一个实数可以用小数形式表示,也可用指数形式表示,但在内存中,实数一律按指数形式存放;
  4. 整型数值没有误差,实型往往会有误差;

算术表达式

+、-、*、/、% 需要两个运算对象,称双目运算符,%(求余运算符)运算对象只能是整型,其余既可以是整型,也可以是实型。

+、-也可以作为单目运算符,如+54、-49;

注意:

  1. 如果双目运算符两边运算符的类型一致,则所得结果类型与运算类型一致;
  2. 若不一致,系统将自动进行实型转换,一致后再运行;
  3. 所有实型数运算均以双精度进行,单精度数则尾数加0变成双精度数。

赋值表达式

赋值运算符:

  1. 优先级只高于逗号,比其他任何优先级都低,并且自右向左结和
  2. 赋值运算符左侧只能是变量,不可以是常量或表达式
  3. C语言中,“=”看作运算符,如a=19;是一个表达式,而表达式有一个值,C语言中最左边变量得到的值就是赋值表达式的值。

注意:赋值号左右两侧的数据类型相同时,操作才能进行;在赋值前,系统将自动先把右侧表达式求得的数值按左边的变量类型进行转换。

自加(减)运算符

  1. 自加运算符、自减运算符也相当于一种赋值运算
  2. ++i:先进行i增加1,再把i值代入;i++:先进行把i值代入,再让i加1.
  3. ‘++’和‘–’结合方向都是自右至左;,负号运算符和自加运算符优先级相同。

 

 

 

 


版权声明:本文为weixin_43898673原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。