一次公司性质的初试笔试题知识点记录

一次公司性质的初试笔试题知识点记录

1. 内存分配的三种方式,及其特点
  • 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。
  • 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但分配的内存容量有限。
  • 从堆上分配,亦称动态内存分配。在程序运行期间,可以使用malloc和new申请任意数量的内存单元,由程序员决定在什么时候使用free和delete释放内存。易出现内存泄漏,频繁地分配和释放不同大小的堆空间将会产生堆内碎块。

– free用来释放malloc出来动态内存,delete用来释放new出来的动态内存空间。
– free只是告诉操作系统回收内存。delete会先调用类的析构函数,然后告诉操作系统回收内存。

共同之处:
  • 它们都是只把指针所指向的内存释放掉了,并没有把指针本身干掉。
  • 在free和delete之后,都需要把指向清理内存的指针置为空,即p=NULL,否则指针指向的内存空间虽然释放了,但是指针p的值还是记录的那块地址,该地址对应的内存是垃圾,p就成了“野指针”。同样会使人认为p是个合法的指针,如果程序较长,我们通常在使用一个指针前会检查p!=NULL,这样就起不到作用了。此时如果再释放p指向的空间,编译器就会报错,因为释放一个已经被释放过的空间是不合法的。而将其置为NULL之后再重复释放就不会产生问题,因为delete一个0指针是安全的。
2.cookie 和session 的区别:
  • cookie数据存放在客户的浏览器上,session数据放在服务器上。
  • cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session。
  • session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用COOKIE。
  • 单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
3.IP协议存在时,还需UDP?
  • 网络之间互连的协议(IP)是Internet Protocol的外语缩写,中文缩写为“网协”。网络之间互连的协议也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守的规则。

  • 任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。IP地址具有唯一性,根据用户性质的不同,可以分为5类。

  • 另外,IP还有进入防护,知识产权,指针寄存器等含义。

  • UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。UDP在IP报文的协议号是17。

  • UDP协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。

  • 在OSI模型中,在第四层——传输层,处于IP协议的上一层。UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。UDP用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用UDP协议。

4.数据流图的四个基本成分:
  • 数据流,加工,文件,源点和终点。
5.JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式;

1)并列数据之间用逗号(,)分隔;
2)映射用冒号(:)表示;
3)并列数据的集合用方括号([])表示;
4)映射的集合用大括号({})表示。

6.加密分为哪两种?对称密码和非对称密码
单钥密码体制
  • 单钥密码的特点是无论加密还是解密都使用同一个密钥,因此,此密码体制的安全性就是密钥的安全。如果密钥泄露,则此密码系统便被攻破。
优点:
  • 安全性高。加解密速度快。
缺点:

1)随着网络规模的扩大,密钥的管理成为一个难点;
2)无法解决消息确认问题;
3)缺乏自动检测密钥泄露的能力。

双钥密码体制
  • 而在双钥体制下,加密密钥与解密密钥是不同的,此时根本就不需要安全信道来传送密钥,而只需利用本地密钥发生器产生解密密钥即可。双钥密码是:1976年W.Diffie和M.E.Heilinan提出的一种新型密码体制。由于双钥密码体制的加密和解密不同,且能公开加密密钥,而仅需保密解密密钥,所以双钥密码不存在密钥管理问题。
优点:
  • 可以拥有数字签名等新功能。
缺点:
  • 双钥密码算法一般比较复杂,加解密速度慢。因此,网络中的加密普遍采用双钥和单钥密码相结合的混合加密体制,即加解密时采用单钥密码,密钥传送则采用双钥密码。这样既解决了密钥管理的困难,又解决了加解密速度的问题。
7.C语言执行过程:
  • 编译---->形成目标代码,目标代码是在目标机器上运行的代码。
  • 连接---->将目标代码与C函数库相连接,并将源程序所用的库代码与目标代码合并,并形成最终可执行的二进制机器代码(程序)。
  • 执行----->在特定的机器环境下运行C程序。
8.Linux系统提供三种接口:
  • 图形界面操作接口,Linux系统一般提供KDE、Gnome等图形界面接口,目的是方便普通用户操作计算机。
  • 控制台接口,即终端接口,Linux系统一般提供bash shell、cshell等等终端接口,目的是方便系统管理员操作计算机,事实上Linux功能的强大也主要体现在终端接口。
  • API接口:即apllication interface,这是应用程序接口,从编程角度Linux系统就是一个大的程序调用库,它提供大量的API函数,目的是方便程序员开发应用程序。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值