程序员面试宝典 第五版——学习记录

一、程序设计基本概念

1.

程序员面试宝典 第五版——学习记录_第1张图片

 

2.

如果取!已经跳出循环了,还会执行后面的++ 

3.

4.

可以参考:https://blog.csdn.net/cnd2449294059/article/details/73913504

#include
#include
#include
using namespace std;
int main()
{
	     unsigned int a = 0xFFFF12F7;
	     unsigned char i = (unsigned char)a;
	     char* b = (char*)&a;
		 printf("%08x\n", i);
	     printf("%x, %08x\n", i, *b);
		 b++;
		 printf("%04x\n", *b);
		 system("pause");
}

程序员面试宝典 第五版——学习记录_第2张图片

首先,需要说明的是:

unsigned char是1个字节,unsigned int是4个字节(32位的)

08表示输出8个字符,不够的用0补齐,eg:11111111,这个是8个字符

i  输出没啥问题,uint赋值给uchar的时候发生截断,只取了一个字节

char* b = (char*)&a;  

这里是将b指到跟a一样的位置,但是是char类型的指针(char *)。printf的时候会自动提升长度char类型的提升到4个字节如果是float会提升到8个字节

由于是char类型,而不是unsigned char,这个数据是有符号的,并且是一个负数负数并且是4个字节,那就是0xFFFFFFF7.打印的时候不管是%08x还是%x或者是%02x,都是输出的这个是数,因为有规则,如果%后面的数字比较小,仍然按照数据本身的长度。

但是如果是正数,例如后面我把b++操作,是一个正数,那么真实长度就只有2,%后面的数字就能起作用了。

 

5

.

 

6。

程序员面试宝典 第五版——学习记录_第3张图片

程序员面试宝典 第五版——学习记录_第4张图片

7.

更好的解释是:https://blog.csdn.net/zhongjiekangping/article/details/6855864

程序员面试宝典 第五版——学习记录_第5张图片

 

8.

程序员面试宝典 第五版——学习记录_第6张图片

9.

采用内存交换

程序员面试宝典 第五版——学习记录_第7张图片

10。

11.

程序员面试宝典 第五版——学习记录_第8张图片

12.

编程练习

程序员面试宝典 第五版——学习记录_第9张图片

int callsore(int *score,int *judge,int n)
{
    double sum1=0,sum2=0,m;
    int n1=0,n2=0;
    if(score && judge &&n)//这句话判断输入的数据的有效性
    {
        for(int i=0;i

 

二、预处理、const、与sizeof

1.很经典的宏操作

程序员面试宝典 第五版——学习记录_第10张图片

#define min(a,b) (a

 

2.

程序员面试宝典 第五版——学习记录_第11张图片

程序员面试宝典 第五版——学习记录_第12张图片


3.涉及到C++多重继承以及虚继承

程序员面试宝典 第五版——学习记录_第13张图片

程序员面试宝典 第五版——学习记录_第14张图片

三、指针与引用

指针是C++提供的一种颇具特色的数据类型,允许直接获取和操纵数据地址,实现动态存储分配

一个数据对象内存地址称为该数据对象的指针

1.

程序员面试宝典 第五版——学习记录_第15张图片

2.尤其是swap1,感觉会常犯错

程序员面试宝典 第五版——学习记录_第16张图片

程序员面试宝典 第五版——学习记录_第17张图片

程序员面试宝典 第五版——学习记录_第18张图片

 

2.

程序员面试宝典 第五版——学习记录_第19张图片

程序员面试宝典 第五版——学习记录_第20张图片

3.

而为啥这样改的原因是?(很关键的解释,看懂的话,懂得会很多)

程序员面试宝典 第五版——学习记录_第21张图片

4.比较特别的一道题目

程序员面试宝典 第五版——学习记录_第22张图片

程序员面试宝典 第五版——学习记录_第23张图片

 

5.上面的和下面的这道一起看,会比较好

程序员面试宝典 第五版——学习记录_第24张图片

6.指针数组

 

7.二维的数组指针

程序员面试宝典 第五版——学习记录_第25张图片

8.一维数组变二维数组

程序员面试宝典 第五版——学习记录_第26张图片

 

四、计算机网络与与分布式系统

1.在一个IP数据包到达目前的地址之前,数据包达到终点不可能重组,但可以分散成碎片

2.

 

你可能感兴趣的:(面试准备)