23111 网络编程 面试题

1.进程与线程的区别

进程之间资源是独立的,是资源分配的最小单位,进程的pid是FILE函数的返回的句柄,子进程初始资源是拷贝父进程的,进程分为用户空间和内核空间;

同一进程下的线程之间共享资源,是任务分配的最小单位,会出现竞态,不同线程之间多个参数传参需要借助结构体,线程资源消耗比进程低。

进程和线程都能多任务并发执行,都遵循时间片轮询,上下文切换原则

2.文件IO和标准IO的区别

标准IO依赖库函数,由程序执行的,标准IO内的输入会进入缓冲区,等待刷新时机统一输出,所以效率较高。标准文件是文件IO的二次封装,标准IO=文件IO+缓冲区。标准IO调用依赖文件指针

文件IO依赖系统调用,由内核执行的,每执行一次文件IO,就调用一次系统调用,效率较低。会有函数从用户空间向内核空间的切换。文件IO调用依赖文件描述符。

3.值传递和地址传递

值传递,若调用的函数没有返回值,其结果不会影响主函数,形参不能改变实参;

地址传递,传递的是一段地址,即使没有返回值,函数的形参调用有可能影响实参;

4.函数参数存在的意义

便于完成主调函数与被调函数之间的数据交流,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值