一些常见的C/C++题目(二)

一些常见的C/C++题目(二)
9、写出float x 与“零值”比较的if语句。
if(x>0.000001&&x<-0.000001)
注意的是在win32中,sizeof(float)=4。

10、 Internet采用哪种网络协议?该协议的主要层次结构?
tcp/ip 应用层/传输层/网络层/数据链路层/物理层
注意:OSI模型  有7层。应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。(其实不会考的那么简单)

11、Internet物理地址和IP地址转换采用什么协议?
ARP (Address Resolution Protocol)(地址解析協議)MAC--->IP
问题扩展:
DNS 域名解析协议。
什么是ARP?
ARP协议是用来由IP地址获取MAC地址的。通过发送ARP帧。
局域网:向网络上发送一个广播询问某IP地址,网络上其他的IP地址不响应,只有该IP地址的主机会响应并发出数据帧。同时他们都更新ARP表。
不同局域网:发送主机通过ARP协议获得的将不是目的主机的真实MAC地址,而是一台可以通往局域网外的 路由器的某个端口的MAC地址,于是此后发送主机发往目的主机的所有帧,都将发往该路由器,通过它向外发送。这种情况也称为 ARP代理(ARP Proxy)
什么是ARP攻击?
ARP攻击就是通过伪造IP地址和MAC地址实现 ARP欺骗,能够在网络中产生大量的ARP通信量使 网络阻塞,攻击者只要持续不断的发出伪造的ARP响应包就能更改目标主机ARP缓存中的IP-MAC条目,造成网络中断或中间人攻击。
举一个例子:ARP攻击主要是存在于局域网网络中,局域网中若有一个人感染ARP 木马,则感染该ARP木马的系统将会试图通过“ARP欺骗”手段截获所在网络内其它 计算机的通信信息,并因此造成网内其它计算机的通信故障。

12、IP地址的编码分为哪俩部分?
IP地址由两部分组成,网络号和主机号。不过是要和“子网掩码”按位与上之后才能区分哪些是网络位哪些是主机位。
什么是子网掩码?
用来指明一个 IP地址的哪些位标识的是主机所在的子网以及哪些位标识的是主机的位掩码。

13、对于一个频繁使用的短小函数,在C语言中应用什么实现,在C++中应用什么实现?
c用宏定义,c++用inline 

解析:
#define MAX(a,b) ((a)>(b)?(a):(b))  
(1)、使用是切勿调用 MAX(a++,b);  这样会可能会使a增值两次。
(2)、没用参数检查。
内联函数:
(1)、在类声明定义的是一个内联函数、

 

你可能感兴趣的:(一些常见的C/C++题目(二))