在线编译器对计算机内存的影响

Effect of Online Compiler on computer's memory

本文关键字:影响 内存 计算机 编译器 在线      更新时间:2023-10-16

当我们声明任何变量时,尤其是在C/C 中时,它会根据其数据类型(以及机器)分配在计算机的内存中。我的问题是,当我们在在线IDE中运行程序时,我的PC/机器的内存是否会使用?

这个问题对于在C中动态分配内存的问题更重要,因为无论出于何种原因,如果我们滥用了诸如malloc()calloc(),尤其是free()的功能参数中的指针,则计算机存储器可能会损害一定程度(内存泄漏)。

因此,如果在线编译不使用计算机内存,那么我可以在在线IDE上使用这些功能,但我不知道是什么情况。安全吗?

由于所有内容都在远程计算机上运行,因此您的本地PC不会受到那里发生的任何事情的影响。

在线编译器无法访问计算机的本地内存;所有运行过程都在远程计算机上进行。因此,即使您使用malloc()calloc()甚至free()

例如,流行的在线编译器IDEONE在Sphere Engine拥有的远程服务器上运行已提交的代码。内存分配,编译,运行等...全部都在该服务器上进行。其他在线编译器使用类似服务。

请注意,在说上述话;如果编译器滞后,或者您的代码有故障(例如,它进入了意外的无限循环),则您的浏览器可能会遇到滞后或可能会悬挂(例如,在我的情况下有时会这样)。但这与您的计算机内存无关,因为只有开放式浏览器受到影响,并且其他所有内容都可以正常工作。这种滞后之所以发生的原因是由于远程服务器上的某些问题,由于代码故障或处理速度慢,等等,这可能会导致您的Internet速度慢,这可能会导致某些滞后。但是,再说一遍,这与您的机器的本地记忆无关。

最后一段是主要问题的额外旁注。

它们通常是Web服务。他们接收程序并编译,链接并在沙箱(在服务器上)中运行,仅将输出返回到最终用户。虽然我无法对所有这些评论,但这是典型的行为。因此,通常,它们是安全的,并且不会使用您的计算机内存来运行代码。