C语言程序设计实用教程
文章目录
- 八进制变为十进制
- 实型常量
- 字符常量
八进制变为十进制
如:(123)8=1x82+2x81+3x80=83
十六进制以0X/0x开头,(AF)=(1015),0x/0X=0
如:(123) 16=1x162+2x161+3x160=291
(0xde)=13x161+14x160=222
在一个常数后加一个字母1或L,则认为是长整型如,358000L(十进制为35000)、-0XA5L(十进制为-165)
无符号的整形常数的后缀为u或U,如0XA5Lu表示十六进制无符号长整数A5,其十进制为165
实型常量
指数形式:由十进制、阶码标志E或e,以及阶码组成2.1E5表示2.1X105
实型常量的整数部分为0可省略,-.57=-0.57
字母E或e之前必须有数字,且E或e后面指数必须为整数,1e3.5是不符合
123.456=123.456e0=12.3456e1=1.23456e2
1.23456e2称为“规范化的指数形式”,即在字母E或e之前的数据部分中,小数点左边有且只有一位非零数字,12.908e11、135.8e-3、0.356e7则不属于规范化指数形式
一个实数在输出时,是按规范化指数形式输出的,如指定将实数5698.75按指数形输出,输出结果是5.69875e+003
float型变量只接受7位有效数字
double型变量能接受15位有效数字
除此之外,将一个很大的数和一个很小的书相加或相减时很容易“丢失”较小的数而发生误差
字符常量
| 字符 | A | B | a | b | 0 | ! |
|---|---|---|---|---|---|---|
| ASCII码值(十进制) | 65 | 66 | 97 | 98 | 45 | 33 |
ddd和hh分别位八进制和十六进制的ASCII码
| \ddd | 1~3位八进制数所代表的字符 |
|---|---|
| \xhh | 1~2位十六进制数所代表的字符 |
如:’\101’表示ASCII码为101八进制的字母‘A’
表达式中的类型转换

表达式使用中应该注意的问题
设i的初值为5,表达式J=(i++)+(i++)+(i++)
对于这类自加运算组应先查**“先加后用或先用后加”**,(i++)是先用后加,本题J=15,i8
又如i=5,则J=(++i)+(++i)+(++i)
J=(++i)+(++i);J=7+7=14,i=7
J=(++i)+(++i)+(++i);J=7+7+8=22,i=8
J=(++i)+(++i)+(++i)+(++i);J=7+7+8+9=31,i=9
若表达式超过两个++i相加,则从第三个++i开始,按照“先加后用”的规律依次加上i的值
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
