2009-05-11 8 views
5

私が取り組んでいるプロジェクトにいくつかのANSI Cコードをインポートする必要があります。私が入りたくない理由から、元のコードをラップするのではなく、C#のコードをリファクタリングしたいと思っています。手作業で作業するには数日かかるかもしれませんが、始める前に、私にその道を譲り渡せる自動ツールがありますか?私はチープスケートで、私がやっている仕事はプロボノですので、無料のツールだけでお願いします。ANSI CコードをC#に変換するツールはありますか?

+0

あなたがチープスケートをしていることを認めてうれしいです。 ;-) – peSHIr

+0

私は実際に私自身の協議でチープスケートではありませんが、私はその特定のプロジェクトに自由に時間を与えているので、私はそれにお金を費やす準備ができていません。私が仕事をしたとき、私は私が余裕ができる最高のツールを使用しようとします。 –

答えて

2

手動のリファクタリングが「唯一」に数日かかる場合、それは私の投票を得るでしょう。 Cコードが何をしているのか、それがどのように書かれているか(ポインタ、カスタムライブラリなど)によって、自動化されたコンバータはちょうど混乱を招くかもしれません。その混乱を解き放つことは、単に手で変換することよりも大きな仕事になる可能性があります。

1

変換コードの設定、クリーンアップ、リファクタリング、単純なプレーン化(コンバータが使用可能な場合でも)は、おそらく数週間または数ヶ月の何かになるため、手作業で書き直してください。

1

GCC用の実験用CLI Back-End and Front-Endがあります。既に、CプログラムのサブセットをCLRが実行するバイトコードであるCILにコンパイルすることができます。

(Webページが、それはコードのように思われてしまうだけで数ヶ月かけて開発して、それ以来無視されますが、それは古くなっていました;。ST Microelectronicsは、継続的な維持・発展である)

あなたは指定されていないなぜあなたはCからC#への変換が必要ですが、CとC#をP/InvokeまたはCOMなしで一緒に再生させたいだけなら、十分かもしれません。

1

既存のコードをマネージC++別名C++/CLIとしてコンパイルすることから始めてもよいでしょう。それが十分にスムーズに進んだとすれば、あなたは実用的でテスト可能な基礎を構築することができます。主要な機能をそれぞれのクラスに移動し、必要に応じて途中でC#として書き直します。

関連する問題