2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

C言語って…

1 :名前は開発中のものです。:02/08/02 16:31 ID:GWrer4oY.net
C言語でゲームって作れるわけ?
あんなの文章表示させられるだけでしょ?

211 :名前は開発中のものです。:2008/06/28(土) 17:16:49 ID:+CR2loRi.net
今時ゲームはC++でつくるもんだろ

212 :名前は開発中のものです。:2008/06/28(土) 18:35:52 ID:WDd+KucR.net
C++でゲーム作ってるけど、ぶっちゃけ何もわかってねぇ俺。
クラスってなんだ? インスタンスってなんだ? ってレベルだが
BASIC的な使い方で一応なんとかなってる。

213 :アジェグ4倍 ◆4xAJeG.COM :2008/06/28(土) 18:52:04 ID:b+gobhTl.net
クラスと言うのは、構造体に毛が生えたようなモノだよ。

C++が出回る前は、よく関数の引数に構造体のポインタが入ってたけど、
そういう関数は、その構造体に依存してるわけだから、
そういうのをクラスの中の関数(メソッド)にしてしまうというわけだ。

インスタンスはかつて「実体」と言われていたもの。
通常はポインタを定義して「new」をやるわけだが、
newと言うのは、mallocと同様のことをするんだよ。
で、deleteがfreeなわけだ。

クラスにはnewのときに動くコンストラクタと、
deleteのときに動くデストラクタっていう関数があるんだが、
コンストラクタのスパゲティは、エキスパートでも手に負えないから、
ココにはむやみに処理を入れすぎないように注意するんだぞ。


214 :アジェグ4倍 ◆4xAJeG.COM :2008/06/28(土) 19:13:14 ID:b+gobhTl.net
それから、C++を勉強するときは、
C++の機能とテンプレート(STL)の機能を
キッチリ区別することが大事だぞ。

C++として追加された機能で重要なのはそれこそ
クラスとnewとdeleteと//ぐらいなもの。

あとはみんなテンプレートだったりするんだよね。
vectorとかlistなんてのはね。


215 :名前は開発中のものです。:2008/06/28(土) 20:45:27 ID:4+USP+m/.net
クラスって、よく情報の試験なんかで出てくる凝集度って概念の中の
情報的凝集度の考え方を進めて扱いやすくしたものだよね。
BASIC的な使い方の延長線上にあるものなのに、世間では一部の
胡散臭い連中がオブジェクト指向分析/設計とセットでまったく新しい
考え方のように広めてしまったけど。

216 :212:2008/06/29(日) 09:39:17 ID:OsnqiwUH.net
まさか愚痴に対して色々解説して貰えるとは思ってなかった。どうもありがとう。
でもごめんなさい。用語については一応今まで何度も自分で調べてるんだ。
それでも用語の説明に出てくる用語がまた理解できなくて、何度調べても何度も忘れてしまう。

215さんの言われてるように、既に知ってる概念のような気はするんだけど
それと名前が結びつかないというか。
○○って呼び方じゃいかんのか!? とか思ってしまって自分の頭の固さが嫌になる。

簡単なゲームプログラムサンプルが示されて、「この部分を○○と呼ぶんじゃーー!」とか
解説されたならすぐ覚えられそうな気はするんだけど、そういう俺専用みたいな
解説書には出会えた事がないw

ポインタにしても a だったり &a だったり p だったり p* だったり混乱しまくり。
アセンブラみたいに sp と (sp) でいいじゃんか! とか思ってしまう。

217 :アジェグ4倍 ◆4xAJeG.COM :2008/06/29(日) 11:45:04 ID:lMaovqSC.net
アセンブラ使っててCがようわからんというのも珍しいな。
おれはX68000のGCCのコンパイル能力を思い知らされて以来、
アセンブラはもう使うまいと決めた。


218 :名称未設定.c:2008/09/07(日) 09:11:03 ID:e5xGPBLN.net
#include<stdio.h>

int main(){
char baka;
printf("パスワードは?");
scanf("%d",baka);
if(baka=="baka"){
printf("なにもおきないよーだ"); /*printfのかわりに処理を入れる*/
}
else{
printf("バーカ");
}
retrun 0;
}
/* tabじゃなくてスペースだからこのままやるとエラー出る*/

219 :名前は開発中のものです。:2008/09/07(日) 19:45:07 ID:DSJcaGql.net
>>218
スペースとか関係なしにコンパイル不可能だろ


220 :名前は開発中のものです。:2008/09/07(日) 21:29:51 ID:TIjo/KPK.net
> scanf("%d",baka);
これでコンパイルは通るかもしれないが、
1バイトのbakaの前後領域に入ってるゴミデータをint型のアドレスとして解釈して、
実行すると落ちる可能性がある。

> if(baka=="baka"){
bakaはchar型で"baka"はアドレスになるから、
コンパイルできない可能性が高い(コンパイラによる)。
できたとしても1バイトのデータとアドレスが一致する可能性はまずない。

60 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★