Zig Academy · レッスン

zig translate-cでCをZigとして読む

CソースをZigコードに変換します

レッスン 4/413 ステップ

「zig translate-cでCをZigとして読む」はCoddyKit上の無料Zig Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはZig Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Zig Academyコースには全4レッスンが含まれています。

CをZigとして読む

Cを通常のZigソースとして確認したい場合があります。zig translate-cコマンドはCファイルを読みやすいZigに変換します。

zig translate-c input.c

stdoutに出力する

既定ではtranslate-cは生成したZigをstdoutに書き出します。結果を保存して編集したい場合は、ファイルへリダイレクトします。

zig translate-c input.c > out.zig

@cImportと同じエンジン

内部では、@cImportもまったく同じ変換器を使っています。translate-cを使えば、生成されるZigを確認できます。

学習に最適

出力を読むと、Cの宣言がZigにどう対応するか分かります。型の変換を理解する近道です。

インクルードパスを渡す

Cが別のフォルダーにあるヘッダーを使う場合は、translate-cに-Iフラグを渡して、正しく検索・解析できるようにします。

zig translate-c -I include input.c

マクロも定義する

Cコンパイラーと同じように、-Dを渡して変換前にマクロを設定できます。これにより、どのコードパスを変換するかを制御できます。

zig translate-c -DDEBUG=1 input.c

すべてが変換されるわけではない

一部のC構文は複雑すぎるため、opaqueなプレースホルダーやコメントとして出力されます。その部分はZigで手動記述します。

一度きりの変換

translate-cは出発点として使うのが最適です。Zigを一度生成し、その後は何度も再実行するのではなく通常のソースとして保守します。

@cImportと比較する

ビルド時に常に最新のバインディングが必要なら@cImportを、編集可能な永続的なZigファイルが必要ならtranslate-cを使います。

出力は本物のZig

結果は通常のコンパイル可能なZigです。zig fmtで整形し、プロジェクト内の他のモジュールと同じように扱えます。

CソースからZigへ

このようにtranslate-cは、既存のCソースを読み、学び、コードベースの一部として配布できるZigに変換します。

クイックチェック

translate-cが既定で結果をどこに出力するか考えてみてください。

まとめ

zig translate-cは、@cImportと同じエンジンを使ってCソースを読みやすいZigへ変換し、既定ではstdoutに出力する一度きりの変換機能だと学びました。🎯

無料で開始

AI チューターと学ぶ Zig — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
30
レッスン
120

よくある質問

「zig translate-cでCをZigとして読む」レッスンは無料ですか?

はい。「zig translate-cでCをZigとして読む」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Zig Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Zig Academyコースには全4レッスンが含まれています。

「zig translate-cでCをZigとして読む」で何を学びますか?

CソースをZigコードに変換します ブラウザで直接実行するハンズオンコードでZig Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Zig Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのZig Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「zig translate-cでCをZigとして読む」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このZig Academyレッスンでコードを書いて実行できますか?

はい。すべてのZig Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. @cImportによるCヘッダーのインポート
  2. C関数の呼び出しとリンク
  3. Cのポインター、文字列、型
  4. zig translate-cでCをZigとして読む
← Zig Academyに戻る