1.指针,引用的认识,求数据的地址,和数据对应指针的地址
int main()
{
int a = 2345;
int* pa;
int& ra = a;
pa = &a;
cout << a << '\t' << ra << '\t' << *pa << endl;
cout << (&a) << '\t' << (&ra) << '\t' << pa << endl;//这里为求数a的地址
cout << (&pa) << endl;//这里为求a的指针的地址,而不是求a的地址
}
2.用表达式求三个数的最值
int main()
{
int a, b, c, max,min;
cin >> a >> b >> c;
//求最大值
max = a > b ? a > c ? a : c : b > c ? b : c;
cout << "max=" << max << endl;
//求最小值
min = a < b ? a < c ? a : c : b < c ? b : c;
cout << "min=" << min << endl;
}
3.逗号表达式
逗号表达式的一般形式为: 表达式1, 表达式2
逗号表达式的求解过程是:先求解表达式1,再求解表达式2。整个逗号表达式的值是表达式2的值。如,逗号表达式 a=35, a4
赋值运算符的优先级别高于逗号运算符, 因此应先求解a=35(也就是把“a=35”作为一个表达式)。经计算和赋值后得到a的值为15,然后求解a*4,得60。整个逗号表达式的值为60。
一个逗号表达式又可以与另一个表达式组成一个新的逗号表达式,如
(a=35, a4), a+5
逗号表达式的一般形式可以扩展为:表达式1, 表达式2, 表达式3, …, 表达式n
它的值为表达式n的值。
逗号运算符是所有运算符中级别最低的。因此,下面两个表达式的作用是不同的: x=(a=3, 63), x=a=3, 6a
其实,逗号表达式无非是把若干个表达式“串联”起来。在许多情况下,使用逗号表达式的目的只是想分别得到各个表达式的值,而并非一定需要得到和使用整个逗号表达式的值,逗号表达式最常用于循环语句(for语句)中。
在用cout输出一个逗号表达式的值时,要将该逗号表达式用括号括起来.
int main()
{
int a, b, x;
int sum1,sum2;
cin >> a >> b >> x;
sum1=3 * 5, a + b, x * 3;
cout << sum1 << endl;//逗号表达式为最后一项的值比如输入x=5,则sum1=15;
sum2 = 2 * 3, sum2 * 4;//先得到sum2=6;然后逗号表达式的值为sum2*4=24;
//输出sum2的值
cout << sum2 << endl;
//输出该逗号表达式的值
cout << (sum2=2 * 3, sum2 * 4) << endl;
cout << (2 * 3, sum2 * 4) << endl;
}
4.将某个数以逆序形式输出,刚编程的时候做过的一道题目,发现自己当初好sb,居然一个一个输出,为什么不用个循环呢????
5.整形数,浮点型和字符型之间的运算
int main()
{
int a;
char c;
double x;
a = 2.0 / 4;//因为a是整形
x = 2.0 / 4;//x为浮点型
cout << a << '\t' << x << endl;
a = 3 + 'A';//a是整形数字
c = 3 + 'A';//c是字符型变量
cout << a << '\t' << c << endl;
}
6.整数和字符型相加,通过ASCII计算
int main()
{
int a=1;
char b='8';//这里的8是ASCII码,会有一个对应的数值,为56
cout << "a+b/4=" << a + b / 4 << endl;//输出为15
}