9月19日笔试总结

预定义操作算子

C++ 提供了大量的用于执行格式化输入 / 输出的流操纵算子。流操纵算子提供了许多功能,如设置域宽、设置精度、设置和清除格式化标志、设置域填充字符、刷新流、在输出流中插入换行符并刷新该流、在输出流中插入空字符、跳过输入流中的空白字符等等。在程序中使用操纵算字必须嵌入头文件 iomanip.h

虚函数的动态绑定

虚函数会具有动态绑定功能,会按照实际类型调用相关的函数。动态绑定(多态)只有在使用指针和引用时才有效,其他情况下无效。

指针函数

指针函数是返回类型是某一类型的指针。比如: int * foo(int,int);

补充:函数指针

指向函数的指针包含了函数的地址,可以通过它来调用函数。 声明格式:类型说明符 (函数名)(参数)。比如:void (fptr)(); 函数指针声明的是一个变量。

赋值语句的返回值

赋值语句的返回值是所赋的值

1
2
3
4
5
6
7
8
9
10
11
//实验程序

#include <iostream>
using namespace std;

int main()
{
int a = 0;
cout << (a = 3) <<endl;
return 0;
}

指针偏移量的计算

1
2
3
4
5
6
7
8
unsigned char *p1;
unsigned long *p2;
p1=(unsigned char *)0x801000;
p2=(unsigned long *)0x810000;

求:
p1+5
p2+5

解析:
p1指向unsigned char,所以p1 + 5 = p1 + sizeof(unsigned char) 5
p2指向unsigned long,所以p2 + 5 = p1 + sizeof(unsigned long)
5