c# - 是否有任何 C# 到 C 的转换工具?

标签 c# c

<分区>

我知道 C# 不同于 .NET Framework,C# 是一种由 ECMA (ECMA-334) 和 ISO (ISO/IEC 23270) 制定标准的编程语言。

我不想要将任何 C# 源代码(包括.NET Framework)转换为 C 的转换器,但我想要一个将 ECMA 标准 C# 源代码转换为 ANSI C 源代码的工具.

类似于 java2c但对于 ECMA C#。

最佳答案

并没有这样的东西,但是Vala编程语言能够获取与C#非常相似的源代码,并生成C代码或直接编译它。

http://live.gnome.org/Vala

当然,唯一的问题是库:C# 有很多 API,您必须提供这些 API,或者修改您的源代码以适应 Vala 标准库。

如果你想将这段代码翻译成 C 语言,因为你需要编译它,还有其他的可能性。

比如微软世界的ngen:

http://msdn.microsoft.com/en-us/library/6t9t5wcf(v=vs.80).aspx

在单声道项目中,您可以使用解释器和库创建单个 exe 文件。寻找 mkbundle:

http://www.mono-project.com/Mono:Runtime

Mono 能够“提前”编译,即甚至在程序将要执行之前生成 native 代码,因此它运行得更快。

http://www.mono-project.com/Mono:Runtime#Ahead-of-time_compilation

关于c# - 是否有任何 C# 到 C 的转换工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8385606/

相关文章:

c# - 调用存储过程时如何在表值参数中包含 RowVerson 列?

c++ - 跟随位操作的优化机会?

c - 在 ncurses 上重绘

C - 超出索引元素的地址与整数相同

c - 像 unsigned int 一样右移二进制补码

c++ - 一元运算符 "-"对 C/C++(以及不同的编译器)中的无符号数据类型有何作用?

c# - 当 TCP 连接终止时,如何通知任何一方?

c# - 为什么我的 Gnome 排序算法会导致我的系统挂起?

c# - VSIX newtonsoft 不在包中 (VS>15.5) 抑制包

c# - 在 WPF 应用程序中全局设置文化 (en-IN)