
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
我们之前经常提到内存泄漏问题,内存泄漏就是指程序没有释放掉不再使用的内存。内存泄漏不是指物理意义上的内存消失,⽽是应⽤程序分配某段内存后,因为设计错误,失去了对该段内存的控制,因⽽造成了内存的浪费。内存泄漏的危害,其实对于普通程序运行的话,即使内存泄漏了也问题不大,进程正常结束的时候父进程会来处理,释放内存。但是,长期运行的程序,比如说操作系统,后台服务,长时间运行客户端等等,出现内存泄漏会导致可
环境变量一般是指操作系统中用来指定操作系统运行的一些参数。这个一般是bash直接使用,用户间接得通过bash使用,方便。比方说,我们在编译运行这个C/C++程序的时候,在链接的时候,我们并没有指明,或者是我们不知道动静态库在哪里,但是我们依然可以链接成功。原因就是因为这个动静态库的路径写在环境变量里面,编译器可以直接查找得到。环境变量通常有一些特殊的用途,在系统中有全局特性。
由于,子进程和父进程程序地址空间一模一样的,页表也一模一样的,子进程想要修改的变量,假设还是 g_val ,要被修改,操作系统去查页表,映射到物理地址,但是这里已经有值了,所以,操作系统会在内存里面再开辟一块空间,拷贝一份 g_val 然后再做修改,最后,修改一下页表的映射关系就好,所以,我们可以类比一下。首先第一个,我们思考一些,进程地址空间里面的地址是连续的吧,那么我们的程序加载到内存里面不管
引用相当于是“取别名”。引用和指针很像,但是也有不同的地方,引用不能完全替代指针。那引用是干什么的呢?引用是 C++ 祖师爷本贾尼(Bjarne Stroustrup)在用C语言的时候看指针不爽,然后造了一个引用。引用多用于函数的传参和返回值。那引用是怎么个“取别名”法呢?这里要用到"&"操作符,a有了别名b以后,那么对b修改的同时,也就修改了a,换句话说就是a换了个名字。它们代表的都是同一个空间







