静态内存和动态内存的优缺点:
1,使用静态内存对用户来说很方便,用户并不需要了解分配内存的具体细节,也不需要时刻考虑由于在程序结束前未释放所占用的内存空间而带来的可用内存泄露。
2,但是静态内存一旦分配内存后,不能够再继续增大,容易造成内存溢出或者内存空间的浪费。
3,由于在某个函数中分配的静态内存将在此函数运行结束时被系统自动释放,使用指针由子函数向主函数传递数据的设想是无法被实现的。
使用系统调用fork()时,系统将创建一个与当前进程相同的新进程。它与原有的进程具有相同的数据、连接关系和在程序同一处执行的连续性。子进程是父进程的一个拷贝,子进程获得同父进程相同的数据,但是父进程使用不同的数据段和堆栈段。
调用vfork()时,父进程挂起,直至子进程返回或调用exec函数,因此,总是子进程先返回。