XcodeでC言語の勉強するの意外と苦労するから、環境を整えてみた

「苦しんで覚えるC言語」を教科書に、少しずつC言語の勉強進めてます。
MacでC言語を勉強したくて古いOSにXcode突っ込んだり色々努力してきましたが、このたび

「このままじゃ勉強進められない!」

とついに詰んだので、Xcodeを使わずに勉強できる環境を整えました。

今回開発環境を変えた理由

「scanf で詰んだ」

これ使うとキーボードからの入力待ちになるはずが、
Xcodeだとウンともスンとも言わない。

元々Xcodeは勉強に使うには不向きと聞いてたので、
これを機にテキストエディタとターミナルを使う方法に切り替えました。

現在の環境

Mac OS X 10.7.5 (Lion)
Xcode Version 4.6.3 (4H1503)

流れ

  • XcodeからCommand Line Toolsをインストールして
  • ターミナルを開いて gcc -v と入力してgcc(コンパイラ)のバージョン番号を確認して
  • テキストエディタで拡張子が .c のファイルを作って保存したら
  • ターミナルからgccコマンドで .cファイルをコンパイルして
  • できあがった実行ファイル(a.out)をターミナルから実行

要するに

  • Command Line Toolsをインストールして
  • テキストエディタで.cファイル作って
  • ターミナルでコンパイルして実行

実際の作業

XcodeからCommand Line Toolsをインストールすれば、
テキストエディタとターミナルを使って勉強ができるようになるようです。
私の場合Xcode 4.6.3なので、以下のページを参考にしました。
スクリーンショットで説明されてるのでわかりやすいです。

Xcode 4.3以降でコマンドライン上からgccを使えるようにするには
これさえやっておけば、あとは実際にテキストエディタにコード書いて
保存の時に.cの拡張子つけたファイルをコンパイル&実行するだけ。

cdコマンドで作業ディレクトリをデスクトップに移動します。

$ cd ~/Desktop/

gccコマンドで、hello.cをコンパイルします。

$ gcc hello.c

コンパイルが成功すると実行ファイル(a.out)が作成されます。lsコマンドで確認してみましょう。

$ ls
a.out hello.c

「./a.out」と入力し、プログラムを実行します。

$ ./a.out
Hello, World

C言語入門 – コンパイルと実行 – GNU Compiler Collection(gcc) – Mac環境 – Webkaruより)

ターミナルに慣れてない人向けのヒント

いや、私自身がターミナルなんて滅多に使わなくて戸惑ったから、
こんなメモ書き置いておくんですけど。

Hint1 : パス(ファイル)指定がわからない

作ったファイルをフォルダにしまっちゃったから、パス指定の仕方がわからないよ…
って悩んでる人は、
cd って入力したあとFinderからフォルダやファイルをターミナルのウィンドウに
直接ドラッグアンドドロップしても、手っ取り早く移動できたりします。

Hint 2 : いちいちコンパイルするのが面倒

これね!私も思いました。
何しろXcodeでは⌘Rであっという間に結果が見れましたからね。
あまりの面倒くささに、思わず他の統合開発環境を探してしまったくらいです。
ターミナルでいちいち gcc ○○.c と打ち込んで ./a.out って入力するの面倒〜(;´Д`)

…って思ってたけど、ターミナルで矢印の上か下を押すたびに
以前実行したコマンドが自動的に入力されるのに気づいてからは、
ぐっと勉強しやすくなりました( ´∀`)bグッ!
上か下を押して例えば gcc ○○.c って表示されたらリターンキーを押せば、
またコンパイルしなおしてくれるんです。

慣れてる人にとっては当たり前なのかもしれませんが、
はじめて気がついた時にはちょっと感動してしまいました(^^ゞ

Xcodeと違って、コンパイル時にターミナルでエラー表示されても
どこが間違ってるのか原因特定するのが少し大変ですが
(統合開発環境だとエラー箇所わかりやすく指摘してくれるし)
開発目的ではなく勉強目的なら、テキストエディタとターミナルの組み合わせが
手軽でいいかも、と今では思ってます。

参考サイト
C言語入門 – MacでC言語 – コンパイラ(gcc)のインストール – Xcode – Command Line Tools – Webkaru
ゼロから始めるMacintosh開発環境構築(OS X Mavericks編)ーこれからプログラミングを始める人のためにー(1) | IT系のインターンシップならエンジニアインターン
Xcode 4.3以降でコマンドライン上からgccを使えるようにするには
C言語入門 – コンパイルと実行 – GNU Compiler Collection(gcc) – Mac環境 – Webkaru