我想运行一个用C编写的文件脚本。我一直在直接从终端在Windows 10的Ubuntu 10上使用Bash,而在Linux上使用gcc进行编译。

我想知道是否可以通过直接从Windows编译和运行脚本(例如使用Windows gcc并获取Windows可执行文件)来提高执行速度,从而提高脚本的性能?

如果一切都在Windows中完成,该脚本将运行得更快?

谢谢

最佳答案

如果满足以下条件,则本机编译的程序将比脚本等效的程序运行更快,并且使用的内存更少:


语言和源代码是相同的(即,编写C程序脚本并编译相同的源代码)
编译器足够好(大多数情况是,除非您编写了自己的编译器并对其进行故障排除)


就是说,C是一种很棒的编程语言,但是对于脚本来说却不是那么容易,因为运行shell程序(例如grepsed和其他非常有用的命令)并将它们的输出通过管道传递给其他命令很麻烦。当然可以(在这方面,我喜欢tcc),但是应该稍微用在其他常规命令未涵盖的任何内容上(并且,当您使用Windows 10时,PowerShell是对cmd的巨大改进),至少要说)。

现在,如果您想在Windows上进行linux风格的脚本编写(这是更多的“ GNU风格”脚本编写),则可能需要看看MinGW(Windows的极简主义GNU)。它具有标准Linux拥有的所有很酷的工具(bashgrepsedawk,...),这些工具是为Windows本地编译的,因此您将获得与Linux几乎相同的执行速度,与脚本相比,脚本具有优势。

07-28 01:33
查看更多