我正在尝试制作一个Online C Compiler,以便多个用户可以在中央服务器上编译他们的代码。我可以判断他们的代码。
我要计算C程序的时间复杂度~ CPU使用量和空间复杂度~内存使用量。我正在使用Windows XP和cygwin gcc 4.5 compiler。
作为一个博客,我试图通过平视获取进程的内存用法。
c:\cygwin\bin\gcc-3.exe -Wall source.c -o a.exe 2>&1 | pv -o"%i\t%e\t%c2%%\t%m(K)\t%n" gcc-3.exe它是由gcc-3返回内存使用情况,是3520 KB,在每种情况下,要么尝试使用1000 KB大小,要么使用无大小,即简单的printf语句。
你能帮我用自动的方式来计算程序的内存使用量或空间复杂度吗?这不是必要使用上面的代码,只是我在尝试。
欢迎提出建议和回答。
发布于 2012-03-05 13:18:14
发布于 2012-03-05 13:16:31
请看一下这条帖子(实际上是一条评论):
实际上,这就是您所拥有的-使用ulimit ( Unix)或Job (在Windows上)来限制编译器的内存消耗。正如@Yavar所写的,预先预测编译器对给定输入源的内存消耗超出了我们的技术。
顺便问一下,你为什么选择在Win XP上选择Cygwin?这种组合以难以处理而声名狼藉。人们通常在最后一种情况下使用它来移植源于Windows的Unix软件。我希望你不要在你的“在线编译器”系统中制造一个可利用的安全漏洞.
https://stackoverflow.com/questions/9566874
复制相似问题