1.进程与线程的区别
进程之间资源是独立的,是资源分配的最小单位,进程的pid是FILE函数的返回的句柄,子进程初始资源是拷贝父进程的,进程分为用户空间和内核空间;
同一进程下的线程之间共享资源,是任务分配的最小单位,会出现竞态,不同线程之间多个参数传参需要借助结构体,线程资源消耗比进程低。
进程和线程都能多任务并发执行,都遵循时间片轮询,上下文切换原则
2.文件IO和标准IO的区别
标准IO依赖库函数,由程序执行的,标准IO内的输入会进入缓冲区,等待刷新时机统一输出,所以效率较高。标准文件是文件IO的二次封装,标准IO=文件IO+缓冲区。标准IO调用依赖文件指针
文件IO依赖系统调用,由内核执行的,每执行一次文件IO,就调用一次系统调用,效率较低。会有函数从用户空间向内核空间的切换。文件IO调用依赖文件描述符。
3.值传递和地址传递
值传递,若调用的函数没有返回值,其结果不会影响主函数,形参不能改变实参;
地址传递,传递的是一段地址,即使没有返回值,函数的形参调用有可能影响实参;
4.函数参数存在的意义
便于完成主调函数与被调函数之间的数据交流,