C++基础之数据类型表达式与基本输入输出

来源:互联网 发布:网络新媒体是干什么的 编辑:程序博客网 时间:2024/06/01 10:18
1、

VS2013默认是32位(具体的需要根据开发环境操作系统而定)

char型不管什么系统和开发环境永远占一个字节。

bool型占1个字节

32位系统中,short占 字节,

      int floatlong 都占 字节,

                      只有double 字节

2、



3、

八进制:由数字0开头

十六进制:由0x开头

4、

默认的(实型常量)浮点字面值常量为double类型,在数值的后面加f表示单精度。

指数形式:3.23E5=3.23*10^5

5、

字符串常量实际是一个字符数组,组成数组的字符除了显示给出的外,还包括字符结尾处标识符结束的符号’\0’

‘a’占一个字节,”a”占两个字节。

6、

我们以C++代码来判别两个浮点数是否相等。由于浮点数在存储中无法精确表示,所以 fp1==fp2 无法准确的判断float型变量fp1与fp2是否相等。应该使用 (fp1-fp2)<0.0000001 来进行判断。

7、

如果不特殊控制,输出默认全部转换为十进制。

8、

7.8%2  错误

9、


\x表示后面的字符是十六进制数,\0表示后面的字符是八进制数。


10、

int a=0;

int i=1;

a=(i++)+(++i); //2+2

 

结果:i=3,a=4

 

第一步:i++先取出i的值1

 

第二步:计算++i,此时i的值为2

 

第三步:此时a的值为2+2=4

 

第四步:计算完a的值后,再去完成前式i++的自加操作,前式的值也为2+1=3.

因此a的值为4i的值为3.


11、

score=86

score的值为86,并且score=86,这个表达式的值也为86.


12、


什么是结合性?:即指同一优先级别的运算符,是应该从左向右还是从右向左进行运算

算术运算:

a+=a-=a*a;//假设初始a=8

运算过程:

  一:(右结合a-=a*aa=a-a*a=8-64=-56,所以a的值为-56.

  二:a-=a*a整个式子的值也为-56.

  三:(a+=a)a+=a <=> a=a+a=-112

 

自加自减运算符的优先级高于算术运算符(--++  高于 -+*/

&& || 优先级从左向右依次降低。

13、

逗号表达式:从左至右依次计算表达式的值,表达式整体值是最右边表达式的值

14、

自动类型转换(从低精度到高精度转换)

15、

++p->n+3  <==>  (++(p->n))+3 
p->n+++3  <==>  ((p->n)++)+3

16、

在宏定义时,宏名和带参数的括号之间不能有空格。#define  S(r)   4*r       对
                                                                                   #define  S  (r)   4*r     错




原创粉丝点击