Cを学ぶ - コーディング講座アプリのアイコン

Cを学ぶ - コーディング講座

教育 · 無料 · iOS & Android · CoddyKit

Cを学ぶ - コーディング講座 — スマートフォンで本物のCコンパイラを使ってCプログラミングを学べます

Cを学ぶ - コーディング講座は、Cプログラミングを学べる無料のiOSおよびAndroidアプリです。最初のprintfから、ポインタ、malloc、複数ファイルのプロジェクトまで学べます。39のCコースと140以上の短いレッスンに加え、スマートフォンのエディタで使える本物のCコンパイラを搭載。すべての概念について、自分でコードを書き、コンパイルして実行できます。ポインタやコンパイラーエラーで行き詰まったときは、AI Mentorが答えてくれます。

App Store — 無料でダウンロードGoogle Play — 無料でダウンロード
価格
無料で開始、Proへアップグレード可能
プラットフォーム
iOSおよびAndroid
言語
22
対象年齢
4+
必要環境
iOS 15.1以降
App Store
5.0 ★ (2)
アラビア語インターフェースのC Programmingアプリのホーム画面。C Academyのコースカード、毎日の目標、XPレベル、World Coding Challengeのカウントダウンを表示アラビア語インターフェースのC ProgrammingアプリのChallengeタブ。World Coding Challengeと、受講中のコースのチャレンジカードを表示
実行スマートフォンで使える本物のCコンパイラ
140以上短いレッスンで構成された39のCコース
ラボ難所に挑むC Lab
講義室ではなく、実生活のために作られています。

Cは通常、机とコンパイラ、そして2時間の空き時間があることを前提に、1学期間かけて学ぶものです。このアプリでは、同じ内容を短いレッスンに分け、本物のCコンパイラでコードを実行できます。そのため、電車の中で立ったままCを書いてテストすることもできます。

概要

Cを学ぶ - コーディング講座(アプリ内ではC Academyとも呼ばれます)は、C言語をスマートフォンで学びたい初心者、コンピューターサイエンスの学生、組み込みまたはシステム開発者向けの無料のiOSおよびAndroidアプリです。39のCコースと140以上の短いレッスンを、スマートフォン用コードエディタと本物のCコンパイラで組み合わせています。出力、実行時間、メモリ使用量を確認できるほか、ポインタやコンパイラーエラーに対応するAI Mentorも利用できます。C Labには、メモリの可視化、毎日のSegfault Hunt、Speed Arenaの問題、20のガイド付きプロジェクト、模擬C面接が含まれます。最初のCコースは無料で、始めるのにアカウントは必要ありません。Proにアップグレードすると、すべてのコース、ミッション、ラボ、AIツールの全機能、認定試験、広告なしの環境が利用できます。

アプリの内容

画面イメージ

アラビア語インターフェースのC Programmingアプリのホーム画面。C Academyのコースカード、毎日の目標、XPレベル、World Coding Challengeのカウントダウンを表示
ホームここで表示しているのは、アラビア語インターフェースのホーム画面です。144レッスンを含むC Academyのコースカード、毎日の目標、XPレベル、World Coding Challengeのカウントダウン、Ask Mentorボタンが表示されています。
アラビア語インターフェースのC ProgrammingアプリのChallengeタブ。World Coding Challengeと、受講中のコースのチャレンジカードを表示
チャレンジアラビア語インターフェースのチャレンジタブでは、World Coding Challengeのラウンドに参加したり、受講中のコースからチャレンジを開始したり、招待コードを入力したりできます。
アラビア語インターフェースのC Programmingアプリのレッスン画面。AI Mentorのヒントとともに「What is C」レッスンを開始しています。
レッスンアラビア語インターフェースで表示されたレッスン画面。「What is C?」レッスンを短くわかりやすいカードで説明し、AI Mentorボタンについてのヒントも表示しています。
AI chat screen asking How can I help you, with suggested prompts to explain the key concepts, give tips, quiz you and create a learning roadmap
AI chatThe AI chat answers questions and starts from suggestions: explain the key concepts, share tips, quiz you or build a learning roadmap.
C Programming home screen with the C Academy course card, Start First Lesson, a daily goal ring, a Feature Request row and the Skill Hub
HomeThe home screen: the C Academy course card with Start First Lesson, a daily goal ring, a Feature Request row and the Skill Hub.

背景

Cとは何ですか?今でも学ばれているのはなぜですか?

Cは、1970年代初頭にBell Labsで作られた、小規模なコンパイル型言語です。メモリを直接制御でき、マシンの実際の動作に近い形で記述できるため、現在でもオペレーティングシステム、組み込みファームウェア、データベース、言語ランタイムの開発に使われています。後に登場した多くの言語(C++、Java、C#、Go)はCの構文を取り入れているため、Cを学ぶとそれらのコードも読みやすくなります。

ポインタアドレスを保持する変数

ポインタは、値そのものではなく、その値が保存されているメモリアドレスを保持します。Cでは、大きなデータを効率よく渡したり、連結構造を作ったり、メモリに直接アクセスしたりするためにポインタを使います。そして、初心者がつまずきやすいのも、このポインタです。

手動メモリ管理mallocとfree

Cは後片付けをしてくれません。実行時にメモリを要求し、使い終わったら自分で返します。解放し忘れるとプログラムはメモリリークを起こし、2回解放すると壊れてしまいます。

コンパイルソースコードからマシンコードへ

Cのソースコードは、実行前にコンパイラによってマシンコードへ変換されます。そのため、多くのミスを実行途中ではなくビルド時に見つけられます。一方で、1行書いて動作を確認するまでに、コンパイルという工程が必要になります。

未定義動作Cでよくある落とし穴

配列の末尾を越えて読み込んだり、すでに解放したメモリを使ったりするミスには、定められた結果がありません。今日動いたプログラムが明日失敗することもあるため、Cでは早い段階から慎重な習慣を身につけることが大切です。

使い方

実際の学習セッションの流れ

このアプリは、長時間の学習ブロックではなく、短いサイクルを繰り返す形で作られています。少し読む、自分でコードを書く、そして身についたことを実際に確かめる、という流れです。

  1. 1つのレッスンに取り組む

    レッスンは短く、少しの理論と実践的な練習を組み合わせています。そのため、1つの概念をバスの移動中やコーヒーの列に並んでいる間に学べます。すべての内容をわかりやすい言葉で説明し、プログラミング経験ゼロの状態から始められます。

  2. 自分でコードを書いてコンパイルする

    エディタを開き、*、&、->、%d、NULL、sizeof用のキーボード列を使ってCを入力し、本物のCコンパイラでコンパイルして実行します。出力、実行時間、メモリ使用量を確認でき、インタラクティブコンソールではscanfプログラムに入力できます。エラーが示す行へ直接移動することも可能です。

  3. C Labでしっかり定着させる

    クイズや復習セッションで構文を定着させながら、C Labで難所に取り組めます。Memory Labではスタックとヒープが1行ごとに変化する様子を確認し、毎日のSegfault Huntではバグを見つけ、Speed Arenaでは時間を競います。連続学習記録、XP、リマインダーが学習習慣の継続をサポートします。

内容

アプリの内容

実行

スマートフォンで使える本物のCコンパイラ

モバイルエディタでCを書き、本物のCコンパイラでコンパイルして、出力、実行時間、メモリ使用量を確認できます。インタラクティブコンソールではscanfプログラムに入力でき、エラーが示す行へ直接移動できます。

140以上

短いレッスンで構成された39のCコース

最初のprintfから、演算子、制御フロー、関数、配列と文字列、構造体と共用体、再帰、ビット操作、プリプロセッサ、ファイル操作、動的配列、ポインタ、malloc、標準ライブラリまで学べます。

ラボ

難所に挑むC Lab

Memory Labでは、10のシナリオでスタックとヒープが1行ごとに変化する様子を確認できます。Segfault Huntでは毎日新しいバグ入りプログラムに挑戦でき、Compile or Crash?では10個のコード断片に答える60秒クイズに取り組めます。Speed Arenaには素早く解く必要がある6つの問題があり、Build Seriesでは自分でmalloc、シェル、grepを作成します。

20

ガイド付きCプロジェクトとミッション

連結リスト、RPN電卓、単語カウンター、設定パーサー、void *を使った汎用スタックなど、複数ファイルにまたがる実用的なプログラムを作成できます。コード課題とターミナル課題で構成された60のCミッションも用意されています。

AI

AI Mentorとエラー翻訳

ポインタやコンパイラーエラーで行き詰まりましたか?AI Mentorにわかりやすい言葉で答えてもらい、エラー翻訳機能で不可解なコンパイラーメッセージを理解できる修正方法に変換できます。

模擬

C面接対策

AI面接官が、ポインタやライフタイムから未定義動作まで、8つのトピックにわたるCの質問を出します。回答を採点し、足りなかった点も示します。面接問題と今日の問題も含まれています。

適しています

向いている方・向いていない方

次のような方におすすめです

  • Cをゼロから始めたい方、教科書のような説明ではなく、わかりやすい言葉で学びたい方
  • 長時間の学習時間を確保するのではなく、通勤中や待ち時間、休憩中など、1日のすき間時間に学びたい方
  • Cについて読むだけ、クイズに答えるだけではなく、実際にコードを入力し、コンパイルして実行したい方
  • Cの授業と並行して追加練習をしたい学生の方、または組み込み開発やシステムプログラミングに移行したい開発者の方
  • Cの面接対策をしたい方、練習問題とAI模擬面接を利用したい方

次のような方には適していません

  • デスクトップ向けの完全なツールチェーンが必要な方。独自のmakefileやデバッガを使った大規模なビルドは、スマートフォンで行うものではありません
  • 接続なしでコードをコンパイルする必要がある方。Cの実行とAI Mentorの利用にはオンライン接続が必要です
  • すべて無料だと思っている方。最初のCコースと毎日の利用枠は無料で、Proですべての機能が解放されます
  • すでにCを十分に使いこなしていて、初心者向けコースではなく、システムプログラミングを深く学べるリファレンスを求めている方

ご質問

よくある質問

スマートフォンでCプログラミングを学ぶのに最適なアプリは何ですか?

スマートフォンで学ぶなら、レッスンの長さ、実際にコードをコンパイルして実行できるか、行き詰まったときにどれだけ早く解決できるかが重要です。Cを学ぶ - コーディング講座には、39のCコースと140以上の短いレッスン、スマートフォンのエディターで使える本格的なC compiler、そしてAI Mentorが用意されています。プログラミング経験がなくても始められます。iOSとAndroidで、22言語に対応して無料で始められます。

iPhoneとAndroid向けのC compilerアプリはありますか?

はい。Cを学ぶ - コーディング講座では、モバイルエディターでCを書き、本格的なC compilerでコンパイルして、出力結果や実行時間、メモリ使用量を確認できます。scanf入力に対応したインタラクティブなコンソールも利用できます。コンパイルはオンラインで実行されるため接続が必要です。このアプリは、完全なデスクトップIDEの代わりではなく、学習と練習のために作られています。

2026年でもCを学ぶ価値はありますか?

はい。Cは今でも、オペレーティングシステム、組み込みファームウェア、データベース、言語ランタイムの開発に使われているため、需要の高いスキルであり続けています。また、メモリやマシンが実際にどのように動作するかを学べるため、その後に学ぶどの言語についても理解しやすくなります。C++、Java、C#、GoはいずれもCの構文を取り入れています。

Cのポインタとは何ですか?初心者が苦労するのはなぜですか?

ポインタとは、値そのものではなく、その値が保存されているメモリアドレスを保持する変数です。これまでのプログラミング経験の多くではアドレスが隠されているため、初心者はポインタに苦労します。また、間違いがすぐにエラーとして現れるとは限りません。解放済みメモリを使ったり、配列の範囲を超えて読み取ったりしても、一見正常に動作し、後から問題が発生することがあります。Cを学ぶ - コーディング講座のMemory Labでは、10のシナリオでスタックとヒープが1行ごとに変化する様子を確認できます。

Cを学ぶ - コーディング講座はC Academyと同じアプリですか?

はい。Cを学ぶ - コーディング講座はApp StoreとGoogle Playでの名称で、アプリのホーム画面ではCのカリキュラムをC Academyと呼んでいます。iOSとAndroid向けの、CoddyKitによる1つのアプリです。

Cを学ぶ - コーディング講座は無料ですか?

アカウント登録なしで無料でダウンロードでき、無料で始められます。最初のCコース、3つのミッション、毎日のSegfault Hunt、Compile or Crash?、最初のBuild Series、最初のMemory Labシナリオ、1回分の完全な模擬面接、そして1日1問のAI Mentorの質問が無料で利用できます。Proでは、すべてのコース、ミッション、ラボ、AIツールの全機能、修了証試験、広告なしの体験が解放されます。

このアプリはCの面接対策に役立ちますか?

はい。Mock Interviewでは、AI面接官がポインタやライフタイムから未定義動作まで、8つのトピックにわたるCの質問を出し、回答を評価して、見落としていた点を伝えます。Cの面接問題を練習できるほか、今日の1問も用意されています。完全な模擬面接1回分は無料です。

Cでセグメンテーションフォルトが起きる原因は何ですか?見つける練習はできますか?

セグメンテーションフォルトは、プログラムが使用を許可されていないメモリにアクセスしたときに発生します。たとえば、NULLポインタや解放済みポインタをデリファレンスしたり、配列の末尾を超えて読み取ったりした場合です。Cを学ぶ - コーディング講座のSegfault Huntでは、毎日新しいバグ入りプログラムが出題されます。欠陥を見つけて修正しましょう。毎日のハントは無料です。

始める

今日、Cの最初の1行を書きましょう

短いレッスンと本格的なC compilerを備え、iOSとAndroidで無料で始められます。

App Store — 無料でダウンロードGoogle Play — 無料でダウンロード
最終確認日 · CoddyKitが公開 · プライバシーポリシー
iOS および Androidで利用できます。