トップページ⇒mac
821コメント264KB

MacでC言語

■ このスレッドは過去ログ倉庫に格納されています
0001名称未設定03/03/25 19:16ID:zUUnltG3
Objective-Cがプログラミングの話題になっていますが、それ以前にC言語を勉強しなくては意味がありません。
と、言うわけで、Macでプログラミングスレとは別に基礎技術という意味でたてました。

C言語でのプログラミングの仕方は
http://homepage.mac.com/notex/osx/index.html

解説書は
http://www.amazon.co.jp/exec/obidos/ASIN/4274064409/qid=1048587293/sr=1-18/ref=sr_1_2_18/250-3427088-3631446

マックでプログラミングは
http://pc.2ch.net/test/read.cgi/mac/1001404151/l50
http://pc.2ch.net/test/read.cgi/mac/1025998843/l50
0002名称未設定03/03/25 19:16ID:JbTbRPaT
2get
0003名称未設定03/03/25 20:22ID:AVP9mnoJ
age
0004名称未設定03/03/25 20:34ID:rWLL1HtJ
プログラミング板いけ
0005名称未設定03/03/25 21:25ID:SxxEGmtj
Objective-C のみに関するスレなら賛成だけど、 C 言語のみじゃぁ・・・・
>>4 の意見に賛成だな、俺は。
0006名称未設定03/03/25 21:25ID:P1c5VG2Q
本屋さんで売っている Objective-C の本が C の知識を知っているのを前提で書いてるのであって、
C を知らなくても Objective-C は勉強できるかなと思ってる。
(かもいう私も C から勉強したわけだが)
0007名称未設定03/03/25 21:48ID:xETETBNF
Hello World!
0008名称未設定03/03/25 22:10ID:SxxEGmtj
>>1 さんは、プログラミング暦はどれくらいなの?
0009名称未設定03/03/25 22:19ID:5dG/xUVQ
Hello World!に始まってHello World!に終わる。
要は挫折しますた。
0010名称未設定03/03/25 22:20ID:SxxEGmtj
>>9
ありゃりゃ…
0011103/03/25 22:50ID:zUUnltG3
今のところ3年(所詮REALbasic)ですが、Objective-Cを見据えてC言語に切り替え中なので1年未満です。
確かにObjective-Cだけ取り上げればいい話なのかもしれませんが、私がObjective-C関連の書籍を見た限り、ある程度C言語の概念が分かってないと挫折するのではないかと思っています。C言語の延長線上にObjective-Cがあるわけですから。

また、Mac(ここではOSX)におけるC,C++,Objective-Cの開発環境はWindowsなど(UNIX,Linux除く)と違いますから、あくまでもMacで勉強・開発するという事でMa板でたてたのです。
0012名称未設定03/03/25 22:54ID:P1c5VG2Q
じゃあ、ここは Cocoa + Objective-C をするにあたって、
さしあたって C言語 について復習するスレ?

それとも Carbonアプリを作るために C を使うの?
0013103/03/25 22:56ID:zUUnltG3
追加ですが、OSXになりUNIX系列のOSになったわけで、C言語で書かれたプログラムがちゃんと実際にプログラムとして動作する(Terminal上ですが)環境が整ったのです。
CだけではGUIアプリケーションの開発は難しい(OSXでは出来るのでしょうか?)とは思いますが、CUIプログラムとして動く訳で、そういった面では勉強しても無駄にはならないと思いますが。
0014名称未設定03/03/25 22:57ID:P1c5VG2Q
>>13
じゃあ、Terminal を使って 標準C を勉強するんだね?
0015103/03/25 22:58ID:zUUnltG3
>>12
基本的にObjective-CへステップアップするためにC言語を勉強・復習するスレです。
Carbonの話をされてもかまいません。
0016名称未設定03/03/25 22:59ID:9pmY/zF7
正直、このスレ助かります。
0017名称未設定03/03/25 23:01ID:gn5fA66l
Objectiv-Cを理解するためにC言語の基礎の勉強をし、
そのためにUNIXとしての環境を利用するという事であればMac板に存在する必要がない気もするね。
0018103/03/25 23:00ID:zUUnltG3
>>13
Terminalでgcc,ccコンパイラをもしくはproject builderを使用してANSI Cを勉強したいと考えています。
0019名称未設定03/03/25 23:01ID:fLv7YeUW
>>11
>C言語の延長線上にObjective-Cがあるわけですから。

Objective-C ってさ、言ってみればc++ のアンチテーゼみたいなもんで、
c++ ってのは、C 言語 の延長線上にオブジェクト指向の言語を構築したわけで。
確かに、Objective-C で書きづらい処理をC 言語で書くってのは有効だろうけどね、
だからと言って、「C言語の延長線上にObjective-Cがある」というのは
ちょっとあまりにも間違った理解ではないですか ?

C言語の熟達度と、Objective-C 習熟度ってあんまし関係ないように思うし。
0020名称未設定03/03/25 23:02ID:w1oSPfFj
Cの考え方ってオブジェクト指向にじゃまな感じしない?
シンタックスとかじゃなく組み立て方として。
変な知識あるよりObjective-Cをいきなりやった方が
良いような感じがするんだがどうよ?
0021名称未設定03/03/25 23:04ID:rWLL1HtJ
というかC言語自体は特定のOSのために作られたわけではないのでMac板でやる意味がない。
0022名称未設定03/03/25 23:05ID:fLv7YeUW
>>20
同意。
0023名称未設定03/03/25 23:06ID:fLv7YeUW
>>21
このスレタイがむずいわけは、それだ !!
0024名称未設定03/03/25 23:07ID:P1c5VG2Q
>>20
でも、ポインタを知らずにやるのはきついという気はした。
それから、メモリの解放を手動でやるってのも最初は理解できなかった。
(私は Java から始めたので……。)
0025名称未設定03/03/25 23:09ID:YL9i4ci/
>>21
んじゃCoreFoundationとかDarwin関係を掘り下げていくってスタンスでどうよ?
0026103/03/25 23:11ID:zUUnltG3
>>19-20
確かにC言語とオブジェクト指向のObjective-Cを考えれば考え方に大きな違いはあると思います。
Cを拡張したという意味では問題ないかと思います。
「独習Objective-C」という本があればこんな物は作りません。現状のObjective-C本を理解するのにC言語の知識が要求される以上、あって損はしないと思います。

>>21
基本的にUNIXと親和性は高い訳で、Mac(OSX)でやっても良いのでは無いかと思います。
かといってOSXはUNIXと違う所もあるわけですから。
0027名称未設定03/03/25 23:16ID:w1oSPfFj
>>24
それもObjective-Cの中で勉強すれば良いんじゃないかな?
おれはBasicから初めたんだけど最初はでっかいMain()つくっちゃたし。
無駄とは言わないけどもしObjective-Cを将来やりたいならCのプログラムの組み立て方
が身に付く方が恐いかなと。
0028名称未設定03/03/25 23:16ID:rWLL1HtJ
いや、だからさ、Objective-Cに進むためのステップとして
C言語を学ぶなら、おのおののOS(ここではMac OS)を掘り下げても
しょうがないわけよ。

C言語のキモなんて、
・変数
・ポインタ参照
・typedef
・関数と戻り値
これだけ分かってたら十分。
C言語の知識をもとにしてその他の言語に進むのも簡単になる。

これくらいのこと、どんな出来の悪い参考書でも理解できるでしょ。
0029名称未設定03/03/25 23:19ID:P1c5VG2Q
>>28
いやいや……
ポインタが分かってない奴はそこらへんにごろごろ………
0030名称未設定03/03/25 23:20ID:w1oSPfFj
じゃ、ここはポインタスレってことでどうよ>>1
0031名称未設定03/03/25 23:21ID:fLv7YeUW
>>29
"ポインタ参照と配列" をきちっと例を挙げて説明できないヤシってことね w
0032名称未設定03/03/25 23:22ID:fLv7YeUW
>>30
「Mac と ポインタ」

なんでだろ ?
0033名称未設定03/03/25 23:22ID:P1c5VG2Q
ここは純粋に C言語について語るスレみたいなんで、
姉妹スレに 『MacでJava言語』・『MacでC++言語』・『MacでObjective-C言語』を誰か作ってください。

0034名称未設定03/03/25 23:25ID:dTHk1QXm
そういえばcarbonスレって無いな。
0035名称未設定03/03/25 23:26ID:/4cBbFIV
MacOSX Java総合スレッド
http://pc.2ch.net/test/read.cgi/mac/1047361032/l50
0036名称未設定03/03/25 23:26ID:zUUnltG3
>>30
ポインタだけやってもしょうがないでしょう、C言語自体まだ勉強中の人がいるわけですから。

>>28
中級言語ならOSを理解しなければ話になりません。
スポーツじゃないのですから、習うより慣れろは挫折の最短ルートです。
それは低級言語だろうと高級言語だろうと変わりません。
0037名称未設定03/03/25 23:28ID:rWLL1HtJ
んで結局、ここはポインタが理解できないマカが傷をなめ合うスレということでいいですか?

どうでもいいけどポインタが分からん奴は68000のアセンブラとかから勉強してみるといいぞ
0038名称未設定03/03/25 23:30ID:rWLL1HtJ
>>36
アホですか?
文章よめないんですか?

Objective-CというかCocoaでMacのGUIなアプリを作るなら
OSを理解する(というかAPIで何ができるかを知る)ことは重要だけど
それ以前のC言語の概念を理解するのに、OSなんて関係ない。
システムコールだのレジスタだのは、十分条件であって必要条件ではない。
0039名称未設定03/03/25 23:32ID:yEd3WzIz
FM7探してきてまずは6809からw
0040名称未設定03/03/25 23:32ID:dTHk1QXm
まあまあマターリしろよお前ら。
0041名称未設定03/03/25 23:34ID:xETETBNF
main()
{
char *p;
p="イッテヨシ";
printf(%s\n",p);
}
0042名称未設定03/03/25 23:34ID:73fOliux
>>40
いやもっと激論しろ!
けんか腰で.
あほですか?とかは効果的.
0043名称未設定03/03/25 23:36ID:Ltj/Zi3D
c言語についてはいっぱい参考書なりホームページがあるから、
個人的にはMacのtoolbox講座みたいなのをやってくれ!
0044名称未設定03/03/25 23:37ID:P1c5VG2Q
どうやら、みんなの このスレに期待する思惑は違うみたいだ。
それより姉妹スレ作ってよ……。
0045名称未設定03/03/25 23:38ID:rWLL1HtJ
>>43
Cocoaはやっぱり!
0046名称未設定03/03/25 23:38ID:zUUnltG3
>>38
C言語&Objective-Cを使ってマックで開発する時に必要なMacOSの知識、プログラム板やUNIX板では得られない情報を包括して勉強したいのであって、単純にC言語を勉強しようとは言っていません。
プログラムに関する知識不足、認識不足はある程度認めますが、アホだの言われる筋合いはありません。
0047名称未設定03/03/25 23:40ID:rWLL1HtJ
じゃあ簡単に言おう。
そんなことでくじけるようじゃ君には無理。

賛同者→(1)
0048名称未設定03/03/25 23:44ID:xETETBNF
いつか役に立つ時がくるだろうと思って昔買っておいた
凸版のマッキントッシュCプログラミング I巻
MYCOM 進めコードウオーリア
MYCOM もっと進めコードウオーリア
の3冊が本棚に眠ったままになっているのですが、
これで勉強してまだ役に立つことありますかね?
クラッシクアプリしか作れないような気が…
0049名称未設定03/03/25 23:44ID:hXiKFiky
0050名称未設定03/03/25 23:45ID:hXiKFiky
0051名称未設定03/03/25 23:46ID:hXiKFiky
0052名称未設定03/03/25 23:47ID:hXiKFiky
0053名称未設定03/03/25 23:48ID:hXiKFiky
0054名称未設定03/03/25 23:48ID:fLv7YeUW
>>1
「Macでプログラミング」スレがあって、それなりにC言語がらみの議論になっているのに
なぜに類似スレが必要ですか ?
0055名称未設定03/03/25 23:50ID:73fOliux
>>48
ってか>>41エラーでますよ.
理博の先輩.
0056名称未設定03/03/25 23:51ID:hXiKFiky
0057名称未設定03/03/25 23:51ID:hXiKFiky
0058名称未設定03/03/25 23:51ID:hXiKFiky
0059名称未設定03/03/25 23:51ID:rWLL1HtJ
そりゃヘッダファイルをインクルードしてないからエラー出るだろー
0060名称未設定03/03/25 23:52ID:hXiKFiky
0061名称未設定03/03/25 23:52ID:xETETBNF
スマン 訂正しとく
printf("%s\n",p);
0062名称未設定03/03/25 23:52ID:hXiKFiky
0063名称未設定03/03/25 23:52ID:hXiKFiky
0064名称未設定03/03/25 23:53ID:hXiKFiky
0065名称未設定03/03/25 23:53ID:6bjo1MOI
午前0時まで休戦ですか?
0066名称未設定03/03/25 23:53ID:p5l1ihcg
>>46
> C言語&Objective-Cを使ってマックで開発する時に必要なMacOSの知識、
> プログラム板やUNIX板では得られない情報を包括して勉強したいのであって、
そんぐらいgoogle使えよ。英語読めるだろ?
0067名称未設定03/03/25 23:53ID:hXiKFiky
0068名称未設定03/03/25 23:53ID:hXiKFiky
0069名称未設定03/03/25 23:55ID:73fOliux
ID:hXiKFiky
こいつ他スレでいじめられてた奴だろw
0070名称未設定03/03/26 00:01ID:ym+femho
>>69
Toastスレでは割れを告白してたな。
0071103/03/26 00:03ID:drTCnFW6
>>66
I'm a pen.ぐらいなら分かります。

>>ID:hXiKFiky
氏んでくれ
0072名称未設定03/03/26 00:11ID:R9jsaCcC
>>71
I'm a pen !?
ね、ネタだよね……(って当たり前か……)
0073Emacsうまうま03/03/26 00:11ID:3yLiiqeo
なんかあれてるな。

とりあずですが、プログラミングというのは言語にこだわる意味ってあまりないです。
Obj-CもJavaもポインタ理解してないと意味不明です。

一足とびになんでもやろうとするからぼろがでるのであって、なんでも基礎の
つみかさね以外に実はみのらない物です。
0074名称未設定03/03/26 00:14ID:RuSO2pR2
てことは、どういうこと?
0075名称未設定03/03/26 00:17ID:J6IfjC+1
板違いってことだろ。
0076103/03/26 00:19ID:drTCnFW6
>>72
Certainly, Sir or Madam!
0077103/03/26 00:24ID:drTCnFW6
眠いので寝ます。

何かネガティブなご意見を多数頂ますが、返答出来れば明日のお昼頃またきます。
このスレがお嫌いな方は、明日のお昼までにDAT落ちするのを祈った方が良いかもしれません。
0078名称未設定03/03/26 00:33ID:yz/ACMkM
>>73
で、Macで基礎をどうやって勉強したらいいのか、ってスレだと思うのですが。
0079名称未設定03/03/26 00:48ID:J6IfjC+1
だからOSXでいいじゃん。
0080名称未設定03/03/26 00:58ID:QmqtHnEn
>>79
うん、そうだ、スレタイが「Mac OS X で C 言語」ならまだ分かる。
改めて >>1 を読んだが、「OS X」と一言もない。
Objective-C でのプログラミングを目指すなら、「OS X 限定」だとはっきり
させた方がいい。
0081103/03/26 01:01ID:drTCnFW6
おはようございます
>>79
OSXって限定で書くと「OS9以前の俺らはどうなるんだゴルァ!」と怒られるのが怖かったので、
曖昧にしてしまいました。ごめんなさい。

ではまたお休みなさい
0082名称未設定03/03/26 01:03ID:yz/ACMkM
結局、C言語の入門書を買って、OS XのTerminal使ってCの基礎をみっちりやりましょうって事でOKですか?

昔独習Cを読んだはずなのだが何にも残ってねー。。
0083名称未設定03/03/26 01:04ID:3Nl8rgfB
CでOSX固有のプログラム書くのも
Obj-CのためにCを学ぶのも
プログラマ板とかUNIX板にあるからなぁ
0084名称未設定03/03/26 01:05ID:QmqtHnEn
>>81
でも、職人的プログラマ以外は、OS 9 でC 言語やるのって
ものすごく敷居高いでしょ ?

限定は極論かもしれないけど、"主にOS X でのC 言語ベースのプログラミングを"
あたりが無難ではないかな。
0085名称未設定03/03/26 01:28ID:cjBdNoGu
>>84
そうか? 
MPWで機能拡張作れとかいう難題以外は敷居が高いとは思えないけど。

00868403/03/26 01:30ID:QmqtHnEn
>>85
言い忘れた。
技術的な敷居ではなくて、金銭的敷居です。
0087名称未設定03/03/26 01:36ID:ym+femho
>>85
変なことしたら、すぐ落ちるしなぁ…。
0088名称未設定03/03/26 03:43ID:z6o43fFD
>>84
MPWは技術的敷居は高いかもしれないが、ただだよ。

ていうか>>1はたとえREALbasicでもプログラムを数年やってたんなら
>>28のいうキモ、特に>>31のいう「ポインタ参照と配列」の関係さえ押さえられれば
Cの理解は難しくないと思う。あとは、標準ライブラリとそれぞれの環境のライブラリを使うだけだし。

余談ですが、「2次元配列」と「ポインタのポインタ」の関係も難しいですね。
あるいはポインタのポインタを2次元配列として使おうとしたときのメモリ割り当て/解放なんかも
慣れてないとゴチャゴチャします。GCつき言語のjavaとかはこの辺楽ですからねぇ。
0089java勉強中素人03/03/26 03:54ID:D5QQWu2A
言語の仕様覚えても、プログラムはかけないだろ
Basicの経験なんて多分なんの役にも立たないよ

0090名称未設定03/03/26 04:21ID:z6o43fFD
>>89
そうか?
俺は N88-BASIC -> Pascal と C を並行してって感じで覚えたんだが。
1つ言語を覚えているのといないのとでは全然理解が違うと思うよ。
0091Emacsうまうま03/03/26 06:26ID:3yLiiqeo
【初歩】mac OSXでC言語マスターするスレ【基本】
http://pc.2ch.net/mac/kako/1030/10307/1030734241.html
とりあえず以上のスレはよんでもらうと。

>>89
Basicを「仕様」としておぼえても意味ないけど、
プログラミングとしておぼえれば意味ある。

プログラミング言語なんて別にたいした違いあるわけではなく
仕事でないならば、ライブラリの量と個人の趣味の問題。
0092103/03/26 11:10ID:drTCnFW6
BASIC出来てもCは出来ないですねぇ。
C勉強してつくづく思います。
0093名称未設定03/03/26 11:14ID:3Nl8rgfB
そうか?
BASICができればCに移行するのはずいぶん楽になると思うぞ。

X-BASIC -> XCとかだとなおさら簡単。
0094名称未設定03/03/26 11:52ID:tvkd7UMq
結局このスレはどういう方向で進めるんですか?
C言語OKだけど、Objective-C の質問もOK、でいくんですか?
結論はまだ先???
0095名称未設定03/03/26 12:18ID:qqaGycSV
Objective-CってCのスーパーセットな訳だから
別にObjective-CのスレでCの質問して良いんじゃないの?

ム板、マ板でこれやるのはまずいとは思うが。
0096名称未設定03/03/26 13:22ID:V4V4O17e
良スレにしる!応援さげ。
0097名称未設定03/03/26 13:28ID:Afhtjhbq
ファミリーベーシックもOK。
0098名称未設定03/03/26 13:52ID:F2vt4wrS
>>94
どういう方向で進むかを議論するスレです。
0099名称未設定03/03/26 15:10ID:fzfccC9i
Cのキモに、構造体も必要だろ。
あと、本を読むだけでは駄目だね。一番いいのは実践。
昔はポインタが、C言語最大の難関とか言われてたけど、そんな難しくない。
むしろ、なぜそんなことをする必要があるのか、ということを理解したほうがいい。
0100名称未設定03/03/26 15:34ID:gPyd2mj0
>>99
キャストも意外にキモだよね。
0101名称未設定03/03/26 15:35ID:KF2yFnbG
REALbasicみたいなのからCへの切り替えで失敗する人は、
Cの構文やポインタが判らない、というより、
アプリケーションモデルを理解していなくて、
どう、コーディングしていいか判らない人ではなかろうか?




てか、Cってそんなに難しい?
むしろ仕様がコンパクトで簡単だと思うんだけど。
■ このスレッドは過去ログ倉庫に格納されています