C言語は高校生でも...

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
masaomi0819

C言語は高校生でも...

#1

投稿記事 by masaomi0819 » 12年前

僕は最近プログラミングに興味を持ち、自分でゲームを作ってみたいと思いました。
しかし、僕はまだ、今年中学を卒業したばかりでプログラミングの知識などはほとんどわかりません。
そこでみなさんに質問です。
・高校生がプログラミングの知識がなくても、時間をかけてすれば高校卒業までにプログラミングをマスターできるでしょうか?
またゲームが作れるようになるには、どれぐらいかかるのでしょうか?
・プログラミングの知識を得るために本を買いました。しかし、本のすべてを理解する=ゲームが作れる てことではないですよね?
・本だけでは全てが分からないのでどういったサイトを参考にすればいいのでしょうか。また、C言語とC++の大きな違いを教えてください。
わからないことばかり聞いてすいません..............。
どうかよろしくお願いします。

fulls
記事: 72
登録日時: 13年前
住所: 埼玉

Re: C言語は高校生でも...

#2

投稿記事 by fulls » 12年前

>>・高校生がプログラミングの知識がなくても、時間をかけてすれば高校卒業までにプログラミングをマスターできるでしょうか?
もちろんできると思いますよ。
実際私も高1のはじめに始めてプログラミングに、現在も高校生ですがシューティングゲームとか作ったりしています。
授業でプログラミングはないのですべて部活の時間内でやっていますが、自分の周りにも自分と同じような人たちがいるので普通に高校生でも大半の人ならできると思います。


>>・プログラミングの知識を得るために本を買いました。しかし、本のすべてを理解する=ゲームが作れる てことではないですよね?
普通のC/C++の入門書を読んで作れるようになるっことないと思います。
ただ、Cの知識がないにもかかわらずゲームプログラミングの本をいきなり買って、ゲームを作ることを通してCを学んで行った人なら見たことがあります。

>>・本だけでは全てが分からないのでどういったサイトを参考にすればいいのでしょうか。
サイトは、masaomi0819さんがどんなゲームを作りたいか分からないので何とも..

>>また、C言語とC++の大きな違いを教えてください。
機能が増えたり関数の仕様が多少変わったりだと思っていますが、適当なことはいえないので、これはこの掲示板にいるすごい方々が答えた方がいいので私はパスで..

ゲームプログラミングを始めるのであれば、頑張ってください!

beatle
記事: 1281
登録日時: 12年前
住所: 埼玉
連絡を取る:

Re: C言語は高校生でも...

#3

投稿記事 by beatle » 12年前

masaomi0819 さんが書きました: ・プログラミングの知識を得るために本を買いました。しかし、本のすべてを理解する=ゲームが作れる てことではないですよね?
・本だけでは全てが分からないのでどういったサイトを参考にすればいいのでしょうか。また、C言語とC++の大きな違いを教えてください。
仰っている「本」が何の本なのかよくわかりませんのではっきりとは言えませんが、もしそれがプログラミング自体の入門書であれば、それを理解しただけではゲームは作れません。が、理解しないことにはまったくゲームが作れません。
高校数学を理解するのに中学までの数学が必要になる、みたいな感じでしょうか。要するに、基礎的なプログラミング能力を付けないとゲームは作れませんので、まずはプログラミング入門書で勉強しましょう。

といっても、プログラミング自体には重きを置いておらず、ただ「ゲーム作りたい!」という気持ちだけがあると、もしかしたら「ゲームに関係のない」(実はゲーム制作には非常に重要だが、最初のうちは今学んでいることがどうゲームに生かせるのか分からないので、ゲームに関係ないじゃん!という気持ちになる)プログラミングの勉強はつまらなくて途中で投げ出しちゃうかもしれません。
そういうときは、ゲームを作りつつプログラミングを学べる方法を見つけるか、プログラミング勉強をあきらめるしかありません。

前者の方法を僕は少し知ってます。
Re: プログラミングに興味を持ったのですが・・で涼雅さんも書かれていますが、ニコニコ動画で魯鈍ジョンさんが公開している「HSPでSTG教室」シリーズです。
C言語ではないのですが、HSPという言語を使って、プログラミング入門しつつシューティングゲームプログラミングをしていく講座です。
プログラミング言語は、言語は違っても「プログラミングの本質」みたいな部分は共通していますので、HSPでプログラミング入門というのも悪くないと思います。

HSP+ゲーム制作動画でもう一つ。
MIDORIKAWAさんの「絶対バグらない RPG制作勉強会1」という動画です。
僕はこの動画のユーモアセンスが好きで、見てて笑ってしまいます。
そのくせ、プログラミング初期に陥りやすいだろうと思われる「バグ」をわざと(動画では、ついバグを埋め込んだように演出している)発生させて、そのバグへの対処方法を紹介しており、勉強になります。
ゲーム制作とプログラミング入門の「本質的なところ」を上手くまとめた動画だと思います。オススメです。

2つめ。「本だけでは全てが分からない」というのはどういうことでしょうか。ただ単に本を探してないだけじゃないでしょうか?
恐らく、ウェブサイトにある情報より、適切な書籍を買うほうがまとまって、体系だった知識を得られます。
本よりサイトが優れているのは、最新情報が簡単に手に入ることです。出たばかりのライブラリのマニュアルを読むとか、最新のコンパイラの新機能を調べるとか。

ということで、多分プログラミングの勉強にはサイトより書籍が、本当は良いと思います。

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: C言語は高校生でも...

#4

投稿記事 by softya(ソフト屋) » 12年前

masaomi0819 さんが書きました: ・高校生がプログラミングの知識がなくても、時間をかけてすれば高校卒業までにプログラミングをマスターできるでしょうか?
またゲームが作れるようになるには、どれぐらいかかるのでしょうか?
現役中学生でもプログラミングしている人はいます。小学生から始めた人もいます。
どのぐらいでゲームを作れるかは分かりませんが、その人の努力と才能次第だと思います。
ゲームには難しいものとから簡単なものまでありますのでゲームの作成難易度次第ではありますが2DだとRPGやSLGは難しいです。3Dだと何をやっても高難度だと思って下さい。
すごく簡単なものでも半年から1年ぐらいはかかるでしょう。

プログラミングをマスターと言うのはじつはすごく曖昧な言葉なのですが、先生のように教えるレベルだと困難だと思います。とりあえずなんとか使えるレベルなら可能だと思います。
masaomi0819 さんが書きました: ・プログラミングの知識を得るために本を買いました。しかし、本のすべてを理解する=ゲームが作れる てことではないですよね?
そうですね。それは入り口に過ぎません。
その本がプログラミング言語の入門書だとしても、それはプログラミング言語の入口に過ぎませんので更に勉強は必要です。
実のところ本の内容を完全に理解するのさえ難しいのです。

まぁ、それとは別にゲームプログラミングはさらに別の技術が必要です。これ自体がプログラミング言語よりも覚えることが多いです。
masaomi0819 さんが書きました: ・本だけでは全てが分からないのでどういったサイトを参考にすればいいのでしょうか。また、C言語とC++の大きな違いを教えてください。
ここのコンテンツの「ゲームプログラミングの館」から始められてはどうでしょうか?
http://dixq.net/g/

[少し修正]
C言語とC++の違いは、C言語にオブジェクト指向の概念取り入れて仕様拡張したものがC++です。大きくは名前空間、クラス、テンプレートなどが拡張項目ですがコレだけで語れなくぐらい沢山あります。
なお、C++はC言語のかなり上位互換ではありますが完全互換ではありません。
私はC言語に比べるとC++を使いこなす難しさでは何十倍も難しいと思っています。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

アバター
ぱにしん
記事: 58
登録日時: 12年前
住所: 滋賀

Re: C言語は高校生でも...

#5

投稿記事 by ぱにしん » 12年前

こんにちは。私も高校生から始めましたw
無謀にもC++からはじめて、今ではC#、HTML、PHPに手を出してます(まともなの作ったことありませんが)
masaomi0819 さんが書きました: ・高校生がプログラミングの知識がなくても、時間をかけてすれば高校卒業までにプログラミングをマスターできるでしょうか?
またゲームが作れるようになるには、どれぐらいかかるのでしょうか?
・プログラミングの知識を得るために本を買いました。しかし、本のすべてを理解する=ゲームが作れる てことではないですよね?
・本だけでは全てが分からないのでどういったサイトを参考にすればいいのでしょうか。また、C言語とC++の大きな違いを教えてください。
マスターというとどの程度のことができるレベルなのか分からないのでお答えできませんが、順調にいけば1年ぐらいでゲームと呼べるものは作れるようにはなると思います。
本、とは入門書ですよね?(猫でもわかる~、はじめての~など)
入門書をマスターしてもゲームは作れないとは断言できませんが多分無理です。

DXライブラリとC/C++で開発をされるようならこちらのサイトとDXライブラリの公式がお勧めです。
CとC++の違いは・・・Cを使ったこと無いのでわかりませんwclassが使えなかったりとかは聞いたことあります。

Cなら入門書を読まれた段階でゲームプログラミングの館の内容は理解できると思いますよ。
まずは入門書を読むところからスタートです。

masaomi0819

Re:回答ありがとうございます。

#6

投稿記事 by masaomi0819 » 12年前

詳しい回答ありがとうございます。
あともう一つ、皆さんに聞きたいことがありまして.....

みなさんはプログラムを書くのにどういったソフトを使っているのでしょうか?
僕の買った本には
「Eclipse」なら書き間違いを教えてくれるなど、いろいろなな機能があってもっと楽にプログラムをかけます。
と書かれていました。
このサイトはMicrosoft Visual Studio 2008 Expressを使うのがおすすめと言ってますが
初心者の僕が使うにはどのプログラムのソフトを使えばいいのでしょうか?
基本的にソフト自体に大きな違いはないのでしょうか?
教えてください。

だんごさん
記事: 273
登録日時: 12年前

Re: C言語は高校生でも...

#7

投稿記事 by だんごさん » 12年前

私は中学2年くらいから始めました。
masaomi0819 さんが書きました:このサイトはMicrosoft Visual Studio 2008 Expressを使うのがおすすめと言ってますが初心者の僕が使うにはどのプログラムのソフトを使えばいいのでしょうか?基本的にソフト自体に大きな違いはないのでしょうか?教えてください。
私はMicrosoft Visual Studio 2008 Expressを使っています。他のソフトを使ったことが無いので評価はできませんが、私でも出来るのだから絶対難しくないはずです。
ただ、プログラムを書く前の設定がややこしいと思います。と言っても、初期設定以外問題なく、使いやすさは良いと思いますよ。

初心者が解答して申し訳ないです・・・。
 Dango San

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: C言語は高校生でも...

#8

投稿記事 by softya(ソフト屋) » 12年前

JavaならともかくC/C++でEclispeを使っている人はここでは少ないと思います。
参考に、そのEclispeを推薦している書籍を名前を教えて下さい。どういう著者の人が書いているのか気になったので。

設定面で行くとEclispeでDXライブラリを使うのはすごく面倒というか知識が要ります。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

beatle
記事: 1281
登録日時: 12年前
住所: 埼玉
連絡を取る:

Re: C言語は高校生でも...

#9

投稿記事 by beatle » 12年前

僕はEclipseでC/C++を使っていた人です。Visual Studioはクローズドなソフトでして、僕はオープンなソフトが好きだったのでEclipseを使用していました。
EclipseやVisual Studioは「統合開発環境」といいまして、プログラムのソースコードを書く作業に使う「テキストエディタ」以外に、プログラミングに役立つ様々なソフトウェアが統合されています。
ですから、開発効率はいいと思います。

僕は、わけあってEclipseじゃなくてVim + GCCという環境にしてしまいました。
Vimというのは、ソースコードを書く「テキストエディタ」だけの機能をもったソフトウェアです。統合開発環境みたいに色々な機能はありません。
Vimはプログラミング初心者には必ずしもおすすめできるものではありません。

まあ、順当に行けばVisual Studioがいい選択肢になると思います。
(僕が学び始めた頃はVisual Studioが有料版しかなく、買えなかったという事情がありますが、いまならExpressが無料なのでいい時代ですね)

Loki

Re: C言語は高校生でも...

#10

投稿記事 by Loki » 12年前

masaomi0819 さんが書きました: 高校生がプログラミングの知識がなくても、時間をかけてすれば高校卒業までにプログラミングをマスターできるでしょうか?
完全にマスターできるかと言われれば、やはり努力次第ですが、とりあえず使えるようにはなると思います。
自分は小学生の時から初めて、今新高一になるところですが、Cは少し分かる程度です。
Cは実質半年ぐらいしか触れておらず、他の言語を主に使っていたので、アルゴリズムは分かっていても、きちんとした、メモリ管理等が出来ていない状況です。
ですが、3年間C/C++を学習し続ければ、それなりに使えると思います。
このやり方の方が速いとか、無駄がないとか、ソースコードを少なくする方法とか、そういうのも自ずと分かると思います。
小/中学生でも出来るのですから、高校生なら、もっとスラスラと頭に入っていくと思います。
ただ、そのためには本や、Q&A等を意欲的に見ることが必要です。
特に、Q&Aはお勧めです。(個人的経験です><)

masaomi0819

Re: C言語は高校生でも...

#11

投稿記事 by masaomi0819 » 12年前

詳しい回答ありがとうございます。
今、私が読んでいる本は、「わかりやすいC 入門編」著者 川場隆
という本を読んでいます。

たかぎ
記事: 328
登録日時: 13年前
住所: 大阪
連絡を取る:

Re: C言語は高校生でも...

#12

投稿記事 by たかぎ » 12年前

一応、私も少しだけコメントしておきます。

まず、EclipseでDXライブラリを使うことについてですが...
http://mergedoc.sourceforge.jp/
↑からC/C++用(JREあり)のEclipseをダウンロードすれば、MinGWもいっしょにインストールされます。
あとは、GCC用のDXライブラリをダウンロードしてきて追加するだけです。
Visual Studioと比べて、特に難しい要素はありません。

ただ、せっかくMinGWを使うのなら、最新版を使う方がC++11の機能の一部も使えて便利なのは確かです。
それが必要ないなら、Visual C++ 2010 Expressを使っておけばよいかと思います。
(Visual C++ 2010でもC++11の機能の一部が使えますが、対応状況が違います)

次に、C++が難しいかについてですが...
完全にマスターしようと思えば、C++はCよりずっと難しいといえます。
ただ、本当に完全にマスターしないといけないかは疑問です。
(C#やPHPでも、完全にマスターするのはCよりずっと大変です)
普通に(ゲームも含めた)アプリケーションを作るだけなら、C++のほうが圧倒的に楽です。
例えば、C++のコンテナやスマートポインタを使えば、Cのような低レベルなメモリ管理を自分で行う必要はほとんどなくなります。

それともう一つ。
勘違いしている人も多いのですが、DXライブラリを使う場合、CではなくC++を使わなければなりません(Cは原則として使えません)。
Cではできて、C++ではできないことや、微妙な仕様の違いがあるので要注意です。
http://www.kijineko.co.jp/tech/cpp2c

アバター
みけCAT
記事: 6734
登録日時: 13年前
住所: 千葉県
連絡を取る:

Re: C言語は高校生でも...

#13

投稿記事 by みけCAT » 12年前

私は、エディタはDev-C++を使用しています。
プロジェクトを作ってのコンパイル、ソース単体でのコンパイルに両方対応しています。
(VCはプロジェクトをつくらないとコンパイルできませんでした)
デバッガも使えます。
(運が悪いとなかなか使えない。コンパイルオプションに-g3を入れるとなんとかなるかも?)
VC使用時のような、余計な巨大ファイルは生成されません。
(特にUSBメモリー上などで安心)
USBメモリーなどに入れて使えるポータブル版もあります。
(コンパイラに癖がある?通常版のコンパイラで上書きすると吉かも)

ぜひおすすめです!
http://dev-cpp-jp.sourceforge.jp/
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)

アバター
沖 滉均
記事: 237
登録日時: 13年前
住所: K県F市

Re: C言語は高校生でも...

#14

投稿記事 by 沖 滉均 » 12年前

masaomi0819 さんが書きました:・高校生がプログラミングの知識がなくても、時間をかけてすれば高校卒業までにプログラミングをマスターできるでしょうか?
またゲームが作れるようになるには、どれぐらいかかるのでしょうか?
プログラム自体は、高校生でもやる気さえあれば覚えられると思いますよ。
マスターできるかという点については、どの程度をもってマスターと言えるのか私も未だにわかりませんけども

私は就職してからC言語を使い始めたのでC言語という点では経験が浅いですが
プログラム自体は小学生の頃からやってます(当時はMSX-BASICやN88BASICなどの旧世代BASICと言われるものですが‥)
ゲームプログラミングも中高生時代はDelphi(Object Pascal)という言語で作成していました。

とっかかりは何であれ、ただ時間をかけるだけではなく目標を持って勉強すれば使えるようになるでしょう
オフトピック
当時はインターネットなんてなかったので雑誌やパソコン通信のチャットで情報収集したりしてました…
There is no royal road to learning.
codeタグで指定できる言語
画像

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: C言語は高校生でも...

#15

投稿記事 by softya(ソフト屋) » 12年前

masaomi0819 さんが書きました:詳しい回答ありがとうございます。
今、私が読んでいる本は、「わかりやすいC 入門編」著者 川場隆
という本を読んでいます。
ありがとうございます。C99規格のためのEclipseなんですね。
確かにVC++ではC99サポートしていないので、これぐらいしか選択肢はありません。
まぁ、C99らしい記述をする機会があるかは別問題なのですが。

「わかりやすいC 入門編」の例題コードを見てみましたが、すごくシンプルです。本格的な応用には少し物足らない本かもしれませんね。
その後をWEBサイトでカバーするか、また新たな本を買うかはmasaomi0819さん次第です。

それとゲームを作るときにDXライブラリを使う場合はC++コンパイラが必須ですので見かけ上はC言語の記述で書いても良いし、C++でも書いてもOKだという形になります。
CとC++の違いやCの規格C90/C99とC++の規格C++03/C++11など規格が沢山あるので、それらの違いは作りながら覚えていくしか無いでしょう。
たかぎさんが書いているように、C++の難しい機能を使わずに便利な機能が追加されたC言語として使う方法もあります。
これもC言語の基本を学んだ上で次のステップアップの一貫としてチャレンジされたらどうでしょう。

あと、どの開発環境が良いかは人により様々な意見があるかと思います。
VC++とgcc(Eclipse他)で言語規格に対する対応度合いにすごく差があるのと開発環境毎の操作性が全く違います。触ってみて自分の気にいる環境を使ってみて下さい。
特徴としてVC++とEclipseのエディタ機能は結構強力ですが起動が遅かったり動作が重かったりします。
みけCATさんの推薦するDev-C++は動作が軽快なのが売りです。
私のようにVC++を使いながらエディタだけ別のものを使っている人もいます(秀丸/emacs/Peggy/NotePad++/サクラエディタ/xyzzy等々)。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

masaomi0819

Re: C言語は高校生でも...

#16

投稿記事 by masaomi0819 » 12年前

皆さん、たくさんの詳しい回答ありがとうございます。
これらを参考に頑張りたいです。
ありがとうございました。

閉鎖

“C言語何でも質問掲示板” へ戻る