トップページgamedev
1001コメント348KB

Kazukiの同人3DRPG制作【第二話】

レス数が1000を超えています。これ以上書き込みはできません。
0001Kazuki2010/09/19(日) 04:46:22ID:6P+qj1XK
Kazukiの同人3DRPG制作 公式サイト
ttp://www.kazuki-sendo.com/game/


発展途上中の素人Kazukiを中心として
DirectX9による3DRPG制作に挑戦します。


開発言語は、C++です。
長く苦しい戦いになると思われますが、
同人ゲーム制作の限界への挑戦が、当企画のテーマでもあります。
0002Kazuki2010/09/19(日) 04:47:16ID:CQL3qNOs
当スレローカルルール

・2ch利用規約およびゲ制作技術板のローカルルールを採用します。
・プログラムコード、シナリオについては超BBSを使用する。
・態度の悪い発言、偉そうなタメ口、上から目線レスは大歓迎とする。
・2ch利用規定に触れない程度の、批判、悪口、荒らしを歓迎する。
・喧嘩、炎上はむしろ大歓迎(自己責任で)
・素人、熟練者、プロを問わず誰でも参加可能とする。
・DAT落ち、次スレが立てれない状況時は、超BBSの避難所を利用する。
・次スレは主(Kazuki)が立てる、他者が立てたスレは全て無効とする。
・当スレの投稿データは2chに帰属します。

// 関連ページ //

1.Kazukiの同人3DRPG制作 公式サイト
ttp://www.kazuki-sendo.com/game/

2.Kazukiの同人3DRPG制作/超BBS
ttp://jbbs.livedoor.jp/otaku/14006/

3.Kazukiの同人3DRPG制作 in zoome
ttp://circle.zoome.jp/kazuki_presents/

4.Kazukiの同人3DRPG制作 in mixi
ttp://mixi.jp/view_community.pl?id=5148524

5.Kazukiの同人3DRPG制作 in ニコニコ動画
ttp://com.nicovideo.jp/community/co462923

よろしくお願いします。

since 2010,09,09
0003Kazuki2010/09/19(日) 04:48:29ID:CQL3qNOs
それでは第二幕の開始です。

前回までの模様は、公式サイトからご覧いただけます。


ボチボチ行きましょう。

では、寝ますw
0004名前は開発中のものです。2010/09/19(日) 04:53:59ID:UaWcX+lg
>>2
今スレもよろしく
0005名前は開発中のものです。2010/09/19(日) 05:42:18ID:43FtHLwn
おなじく今スレもよろ。

1時間テトリスって kihara さんのやつだろ?あれなら100%理解できてるぜ。
そこまで難しい技術を使ってないしね。Win32 API を使ったプログラムは古いけど。

>>1 はもしネットの情報だけでプログラミングするなら、
「猫でもわかるプログラミング」ってサイト勧めるから検索してみるといいよ。
そのサイトのC編、C++編の全部と、Windows SDK 編100章ぐらいまでの内容を
全部理解できてれば、テトリスは100%全部理解できるレベルだね。

俺を試したいなら、もしくはわからなくて知りたいことがあるなら、
テトリスのプログラムで答えて欲しいことは全部答えるぜ!
0006名前は開発中のものです。2010/09/19(日) 06:14:18ID:43FtHLwn
ちなみに、俺もさっき紹介したサイトの
C言語編57章まで、C++編31章まで、Windows SDK 編200章ぐらいまでは全部読んで、
2年ぐらいかけて大体全部の章のコードを自分で試して、色々と改造して勉強してたわ。
(学校の合間に平均的に2〜3日に1章ずつ読み進めてちょうど2年ぐらいかかった)
このサイトのページが作られた日付を見て気づいたけど、
俺がこのサイトで勉強してたのはもう10年以上昔になるんだな。

あと、本格的に専門にし始めてからはタイトルは忘れたが「C言語」「C++(上下巻)」の
日本語の詳説書全部で1000ページぐらいは全部読んだ、というか読まされた。
…何のレスって、俺はこのくらいは勉強してます、っていうアピール。
0007名前は開発中のものです。2010/09/19(日) 10:49:32ID:B/ksO86T
1000ページって本三冊分だよな
良くそのくらいの勉強で理解できたな。天才じゃね?
0008名前は開発中のものです。2010/09/19(日) 10:52:16ID:B81mya6C
結局次スレすぐに立てたのかwまぁ>>1
0009名前は開発中のものです。2010/09/19(日) 11:27:35ID:S99A3Hq7
このスレの常識
defineとはconstantすること
enumerateとはmacroすること
重要なのは基礎より実用
3と9の最小公倍数は27
0010名前は開発中のものです。2010/09/19(日) 11:59:34ID:46WGkHd8
Cの時は初心者だったせいもあって、色々変な本掴まされて3〜4冊買って
ひたすらコーディングしてた。

ポインタと文字列と二次元配列が俺的に難関だったなぁ。

ポインタはパソコンのショートカットをイメージして克服した。
(test.txtファイルをint型の実体として。そのショートカット、ptest.txtがポインタ
testが消えればptestも失われて、書き換えればptestも変わる
ptestのショートカット参照先を変えれば、参照するモノも変わる。
つまりポインタとショートカットは同じ原理。)

二次元配列は九九プログラムとか魔方陣書いて覚えた。

文字列は最後まで不安な所だったが、C++でstd::stringが出てきて問題なくなった。


C++ha
俺本2冊だったわ。
1冊目がC++の絵本ってので、死ぬほど分かりやすくて
2冊目は独習C++でガッツリ。

それでどうしても分からない所はググったな。

それとC++コーディングスタンダードって本よく読んでた、あれは神だぜ。
0011名前は開発中のものです。2010/09/19(日) 13:09:23ID:k9xUl7vL
まぁプログラム組むのを勉強と感じるかそうでないかで
越えられない壁があるよね
勉強と思わないほうでよかった
0012名前は開発中のものです。2010/09/19(日) 14:59:56ID:CQL3qNOs
>>5
その動画を見つけてきました。

公式サイトでご紹介しています。
前スレの最後の方で言っていたのはこの動画のことです。

そのうち、これをもっと詳しく解説していくつもりです。
0013名前は開発中のものです。2010/09/19(日) 15:00:45ID:CQL3qNOs
まあ、俺の場合、
Visual C++ 2010版ですが・・(^^
0014名前は開発中のものです。2010/09/19(日) 15:04:41ID:QfVbc+Gx
変数への代入すら理解してないことを前スレ早々に露呈して、本人もその間違い自体を認めてるのに、
そんな奴がC言語の解説なんてしようと思うこと自体が間違いだってことに気付けないのは何で?

…と聞くだけ無駄なんだろうな。
0015名前は開発中のものです。2010/09/19(日) 15:12:22ID:joeKXN9y
このスレ初めて開いたが >>9 を見て把握した
0016名前は開発中のものです。2010/09/19(日) 15:17:12ID:CQL3qNOs
ちなみに俺の公式のVisual C++ 2010の解説のところで、
ソースファイル、ヘッダーファイル、リソースファイルを実行ファイルにする。

のところで、リソースファイルにicoファイルとrcファイルといのが入っていたと思います。

icoファイルについては触れましたが、
あそこでrcファイルが入っていたと思いますが、
rcファイルはリソースファイルで使います。

上の動画を見れば、ご理解いただけると思います。


まあ、そのうち解説するつもりですけどね。

ていうか、あそこに載ってるのが俺が作ったプログラムでもあるんですけどね。。

そこに気づいてほしいね。(^^
0017名前は開発中のものです。2010/09/19(日) 15:21:20ID:CQL3qNOs
ていうか、ニコ厨さんは、
リソースファイルも知らないわけですね・・。(^^;

これでニコ厨のレベルが解りました。

そんな人たちにプログラミングを解説していると思ってください。

このスレのニコニコ動画の時代から
俺の追っかけをしている人は、
そのレベルではないかと思っています。

まあ、2chの住人はさすがにレベル高いですけどね。(^^;
0018名前は開発中のものです。2010/09/19(日) 15:25:09ID:B/ksO86T
追っかけ(笑)
0019名前は開発中のものです。2010/09/19(日) 15:26:16ID:zk+nudI+
>>10
>1冊目がC++の絵本ってので
これ、俺もみたけど載ってるサンプルがいちいちいやらしいソースになっててウンコだった
なんでもっと素直なサンプルをだな(ry

関数に引数で値を渡してる例が3つか4つ程度しかない
この本で育った人間の逝く末やいかに!?(笑)
0020名前は開発中のものです。2010/09/19(日) 15:27:23ID:CQL3qNOs
あの動画で、ウィンドウを表示するところで、
ニコ厨さんたちは、

「NULLだけ理解できた」とか「俺にはわからん」みたいなことを言ってる人もいる。

多分、あの人たちはプログラムを知ってると思う。

でも、なぜ、理解できないのか?
理解できないはずがありません。


難しい単語が並んでいるので難しく考えているのでしょうけど、
やってるのは、int型で構造体を宣言しているだけなんです。

構造体なんてC言語の基礎の基礎です。
知ってるはずのことが、理解できない。


ところで、ニコ厨さんって面白いね。(^^

あの動画を見ながら、
何度突っ込み入れたくなったことかww


ttp://www.kazuki-sendo.com/game/?p=583
俺が言ってるのは、
ここで紹介している動画のことです。
0021名前は開発中のものです。2010/09/19(日) 15:35:36ID:5faL2SoJ

■■■ Kazukiの同人3DRPG制作 削除前ログまとめ ■■■

- INFORMATION -

本ページは「千堂 和樹」(ハンドルネーム)という方のコミュのログです。
コミュ内では主にとって都合の悪い書き込みは全て削除されています。
主への反対意見はもちろん、アドバイスなどであっても投稿者を全て荒らし扱いとし、
(自身の発言も含め)関連する書き込みを全て削除の上、コミュから強制退会させています。
また、批判されるなど都合の悪い状態になると、それらをリセットするためにコミュごと削除し、
メンバーを全て追い出した後、コミュの作り直しなども行っています(過去3つ作成し、全て削除しています)

これはコミュ主の情報操作により隠蔽されてきた掲示板等での行いのほとんどを記録した非公式ログです。
掲示板で削除されたコメや、これまでの経緯が気になる方など「真実」を知りたい方はご利用ください。
主の対応に嫌な思いをされた方のために、過去の行いを揉み消す行為は絶対に許しません。

http://dl.dropbox.com/u/2886821/kazuki_matome.html
0022名前は開発中のものです。2010/09/19(日) 15:50:03ID:CQL3qNOs
ttp://www.kazuki-sendo.com/game/?p=279

この解説ではまったく触れてないけど。

これ見れば俺のレベルが解っていただけると思うのですがね・・。(^^;


ここに載っている「ATOM」とか「BOOT」とか
君たちには意味解るのかな?

ちなみに、BOOTとbootは意味が違うからね?w


まあいいや。

C言語編の解説が終われば、
嫌でも解説していくと思うから、
楽しみにしておいてほしいよ。
0023名前は開発中のものです。2010/09/19(日) 15:53:50ID:CQL3qNOs
>>21
はいはい。

あなたは、このスレの邪魔がしたいだけですね。

何やっても俺、スルーするから、
何やっても無駄だよ。


まあ、好きにしなさい。

俺はそういうのには興味がないの。
同人ゲーム制作と、
ゲームの作り方を初心者に解説することにしか興味がありません。


では、次の解説でもボチボチ作りますか。
0024名前は開発中のものです。2010/09/19(日) 15:55:21ID:4NuF6rRY
スルーできてねぇじゃん
0025名前は開発中のものです。2010/09/19(日) 15:59:35ID:k9xUl7vL
ATOMはWinAPIの型であってC言語とは全く関係ないですよ^^;
0026名前は開発中のものです。2010/09/19(日) 16:09:15ID:CQL3qNOs
>>25
でも、使わないとゲームは作れません。

もちろん、「Windows用ゲーム」ですが。


そういえば、Platform SDK について、
まだ、まったく触れていませんが、
そのうち、Platform SDK も初心者向けに解りやすく図解入りで解説します。

こういう知識は知ってるのに、
基本的なことは理解できていないのはなぜかというと。


多分、ほとんどの人は、
教科書の1ページからプログラムを勉強しているのだと思うのだけど、
俺の場合、完成したゲームのあらゆるソースコードを?2?で入手して、
そこに書かれている意味を一つ一つ調べて学んで行っているからです。
0027名前は開発中のものです。2010/09/19(日) 16:10:12ID:CQL3qNOs
な の で、

すでにゲームが完成していたりする。
0028名前は開発中のものです。2010/09/19(日) 16:15:37ID:17PzAoH/
だから頭でっかちで変な理解になる
0029名前は開発中のものです。2010/09/19(日) 16:22:47ID:CQL3qNOs
>>28
だから、必要なところだけ学べて、
短時間でゲームプログラミングが理解できる。

C言語をイチから学んでいって、
C++もイチから学んでいけば、
それこそ、膨大な時間が必要だと思うよ。


前にC++のインクルードで呼び出すhファイルの関数を調べて見た時、
膨大にあったので、
これを全部理解するのは無理だと思ったので、

完成品 >> そこに載ってることだけ学ぶ >> 理解できた

という風にしました。
0030名前は開発中のものです。2010/09/19(日) 16:33:51ID:4NuF6rRY
てか
>>22の解説で出てるコード見てみたけど
こんなこと言ってるが
>ていうか、あそこに載ってるのが俺が作ったプログラムでもあるんですけどね。。
あれどう見てもwinアプリで自動生成されるスケルトンだろ
0031名前は開発中のものです。2010/09/19(日) 16:35:22ID:4NuF6rRY
>>29
最低限必要なことすら理解できてないくせになにいってんの
0032名前は開発中のものです。2010/09/19(日) 16:47:12ID:CQL3qNOs
>>31
前スレでの、
int型は1バイトの領域を確保するとか、

>b=0;
>a=50*(b+10);
>printf("%d %d",a,b);

>この結果が「500 0」になるのかが解らん・・。

>「(b+10)」←この時点で、bに10が足されているはずなんだよ。

このことを言ってるのかい?

俺は、あの頃までは「bに10がプラスされる」と思っていた。

でも、本当は違うかった。

でも、aの領域を表示すれば、500が表示されることは知っていたけど、
深いところまで理解してなかったということです。


でも、こんな基本的なこと、あんまり必要なーおーww

まあ、でも勉強になったから皆さんには感謝してるけどね。

そのお返しに、もっと難しいことを教えてあげるよ。


0033名前は開発中のものです。2010/09/19(日) 16:49:08ID:QfVbc+Gx
> 完成品 >> そこに載ってることだけ学ぶ >> 理解できた

そのやり方で現に理解できてなかったじゃん、全然。

b+10 で b に 10加えた値が代入されると思ってたんでしょ?
「.hファイルに関数の意味が書かれている」とか、いまでもそう思ってるよね?
0034名前は開発中のものです。2010/09/19(日) 16:49:27ID:4NuF6rRY
代入が必要ないとかマジで言ってんの?
0035名前は開発中のものです。2010/09/19(日) 16:51:17ID:CQL3qNOs
多分、こういうのって、
教科書の1ページ目とかに載ってんだろうな。

明日にでも書店にいって、
C言語の教科書でも立ち読みしてくる。

てか、今から書店に行こう。

うん。それがいい。



ついでに「14歳からシリーズ?」ってのも見てくるよ。

名前に惹かれたw(^^


初心者(小学生)向けに教えているって気がするしね。


てなわけで、出掛けてきます。
0036名前は開発中のものです。2010/09/19(日) 16:51:50ID:QfVbc+Gx
> でも、こんな基本的なこと、あんまり必要なーおーww

これが「必要ないこと」なら、必要あることなんてなにもないよ
0037名前は開発中のものです。2010/09/19(日) 16:56:42ID:QfVbc+Gx
> そのお返しに、もっと難しいことを教えてあげるよ。

間違いなく、その「難しいこと」もまるっきり間違って理解してると断言できるなw
0038名前は開発中のものです。2010/09/19(日) 16:59:30ID:CQL3qNOs
一応、公式サイトは元に戻しておきました。

今はこの時点です。


俺が作った動画を見てみたい人は、
こちらです。

ttp://zoome.jp/kazuki_p/

暇つぶしにでもどうぞ。


東方全シリーズも動画もあります。


それではまた。
0039名前は開発中のものです。2010/09/19(日) 19:05:29ID:EiST/dWO
さんざん間違い突っ込まれて、難しい質問総スルーして
どうして>>君たちには意味解るのかな?
こんなセリフ吐けるかな
0040名前は開発中のものです。2010/09/19(日) 19:07:29ID:loOljIBD
>>39
煽るのもいい加減にしろ
誰だって初めは未熟なんだから大目に見てやれよ
それとも餓鬼しかいないのかこのスレは?
0041名前は開発中のものです。2010/09/19(日) 19:18:01ID:j7lhEvfe
知ったかkazukiさんキャーステキー(棒読み)
0042名前は開発中のものです。2010/09/19(日) 19:35:52ID:WEkdjnMX
難しい質問:釣り問題
間違い:デタラメもしくは言いがかり

こう言うフィルターかかってるんだろうな

>>40
初めはとか言われてももう4ヶ月経ってるんだぜ?
中坊ならまだわかるんだが、30過ぎたいい大人だからな
批判されるのも仕方ない気はするぞ
0043名前は開発中のものです。2010/09/19(日) 19:37:18ID:yIeNjSXJ
>>9
0044名前は開発中のものです。2010/09/19(日) 20:12:16ID:QfVbc+Gx
> 誰だって初めは未熟なんだから大目に見てやれよ

未熟な初心者が解説サイトなんて作っちゃダメだろ
0045名前は開発中のものです。2010/09/19(日) 20:35:54ID:loOljIBD
>>42
創作に年齢は関係ないだろ
作成ペースは本人の自由だ
>>44

そんな事を言っていたら解説サイトなど作れないだろ
初めから完成されたものを求めすぎだ
0046名前は開発中のものです。2010/09/19(日) 20:55:25ID:mQc8C3MV
ちゃんと勉強してから作れば良いだけの話じゃねーか
0047名前は開発中のものです。2010/09/19(日) 20:57:10ID:4YjszHdw
>>45
そういうのは>>1のサイト見てから言ってよ。
0048名前は開発中のものです。2010/09/19(日) 20:59:12ID:4NuF6rRY
だれも未熟な事自体を否定してるわけじゃないよ
だれだって初めは初心者だそんなことは分かってる。
でも未熟で間違いも多いのに解説サイト作ったり
あくまでも自分はできる奴、それ以外の俺らなんかは出来ない奴と決めつけた発言が反感を買ってるわけ。
0049名前は開発中のものです。2010/09/19(日) 21:09:57ID:jxPR+AIH
解説サイトは悪くない。でも間違った解説サイト害悪。
0050名前は開発中のものです。2010/09/19(日) 21:18:28ID:il0A1f18
創作活動はどう進めようが個人の勝手

間違った情報を垂れ流すのはそうではない

間違った情報を垂れ流すことの害悪は子供だろうが大人だろうが関係ない
(子どもがやったことでも大人がやったことでも害は同じ)
ただ子供は多少の害なら「子供だから仕方ない」と多めに見られるだけ

大人には大人の分別が求められる
0051名前は開発中のものです。2010/09/19(日) 21:21:56ID:ZMaW/yJ8
間違って見えてもこれが初心者向き
そんな枝葉末節はどうでもいい
俺の言うことを理解してないだけ
議論は「見てる初心者」に迷惑

そんな幼稚な言い訳を繰り返す>>1に住民の嗜虐心がマッハで炸裂
そんなスレ
0052名前は開発中のものです。2010/09/19(日) 21:24:30ID:4NuF6rRY
間違った解説こそが「見てる初心者」にとって迷惑なのにね
0053名前は開発中のものです。2010/09/19(日) 21:26:49ID:L6rs6mPf
> そんな事を言っていたら解説サイトなど作れないだろ
> 初めから完成されたものを求めすぎだ
もしかして : あなたもkazuki

解説サイトは完成されたものでなければダメだろ
0054名前は開発中のものです。2010/09/19(日) 21:41:50ID:tD9Eihc/
初心者が解説するってのがもう意味不明
>>1は自身初心者じゃないと主張したいらしい、重ねて意味不明
初心者じゃないことを示すためにソース出せってのは荒らし扱い
基礎はよく分からないけど応用なら得意とか謎ロジックが大転回
0055名前は開発中のものです。2010/09/19(日) 21:49:15ID:HRu9uwmo
解説ページ見てきた。
サイトの出来は悪くないし、解説も目くじら立てるほど酷いとも思えない。
ただページ重すぎ、pingbackとか怖いの読み込んでるしw。
0056名前は開発中のものです。2010/09/19(日) 21:49:32ID:WEkdjnMX
あれが解説サイトじゃ無くて開発日記なら問題なかったんだがな
まぁ、まちがった認識に対して素直に反省できない限り行末は暗いだろうな

>>52
本人の中では合ってるし、わかりやすい解説なんだろうよ
本人の中だけな
0057名前は開発中のものです。2010/09/19(日) 21:51:20ID:tD9Eihc/
体裁はそりゃWordpress、主の嫌いな「他人のコードを使ってるだけ」だから…
0058名前は開発中のものです。2010/09/19(日) 22:07:59ID:L6rs6mPf
>>55
前スレ見てこい
0059名前は開発中のものです。2010/09/19(日) 22:13:21ID:puHU3Noo
公式サイトのうpろだの画像とか、zoomeのコミュニティの画像とか著作権やばくないの?
0060名前は開発中のものです。2010/09/19(日) 22:27:07ID:CQL3qNOs
よし!

次の解説の画像が全部完成した(^^

あとは、これを切り抜いて、
記事を書くだけです。


今回は、かなり重要なことを言っていますよ。

おたのしみに。
0061名前は開発中のものです。2010/09/19(日) 22:29:00ID:rnuJJyYf
間違いさがしの新作もうすぐか。
0062名前は開発中のものです。2010/09/19(日) 22:30:17ID:puHU3Noo
>今回は、かなり重要なことを言っていますよ。
かなり重要な間違いを言うのかな
0063名前は開発中のものです。2010/09/19(日) 22:31:41ID:CQL3qNOs
>>56
解説サイトとは言ってません。

ttp://www.kazuki-sendo.com/game/?page_id=308

そして、ここでもハッキリ言ってますが。

「ゲームプログラミングに必要な知識を学びます。」です。


ちなみに、「ご挨拶」のページでは、

「当企画では、発展途上中の素人がDirectX9による3DRPG制作に挑戦します。」

とも言ってますよ(^^


「学びます」そして「挑戦します」ですw
0064名前は開発中のものです。2010/09/19(日) 22:33:00ID:puHU3Noo
「解説」を載せてるんだから解説サイトだろ
0065名前は開発中のものです。2010/09/19(日) 22:33:37ID:CQL3qNOs
>>55
あの程度のページで重いとか・・。

いったいどんなパソコン使ってるのですか?

とても3Dゲームとかプレイできないような気がしますが?
0066名前は開発中のものです。2010/09/19(日) 22:35:18ID:4NuF6rRY
ページの重さと3D描画の重さはほとんど関係ないわけだが
0067名前は開発中のものです。2010/09/19(日) 22:37:14ID:CQL3qNOs
俺の解説は画像作成が大変なのです。

一個一個、愛情と真心を込め・・・


うえwwうえwwww

自分で言っててキモチ悪w

なので、今は紅茶でも飲みながら一服中。


記事を書くぐらい5分もあれば書けるので、
あとで、パパッとチャチャッと完成させますね。(^^

0068名前は開発中のものです。2010/09/19(日) 22:37:45ID:4NuF6rRY
>>63
392 名前は開発中のものです。 [sage] 2010/09/15(水) 18:04:39 ID:CElqmS7j Be:
今、構造体の解説を作っています。

今度こそ一発で通りたいな(^^


かなり解りやすく解説しているので、
初心者に優しい解説になっています。

おたのしみに。


はて?初心者向けの解説を作ってるようにしか見えないんだが
0069名前は開発中のものです。2010/09/19(日) 22:38:32ID:4NuF6rRY
うわ引用部分見にくいな
>392 名前は開発中のものです。 [sage] 2010/09/15(水) 18:04:39 ID:CElqmS7j Be:
> 今、構造体の解説を作っています。
>
> 今度こそ一発で通りたいな(^^
>
>
> かなり解りやすく解説しているので、
> 初心者に優しい解説になっています。
>
> おたのしみに。
0070名前は開発中のものです。2010/09/19(日) 22:40:03ID:puHU3Noo
>>67
>記事を書くぐらい5分もあれば書けるので、
それで、あんな意味不明な文章が出来上がるわけですね
0071名前は開発中のものです。2010/09/19(日) 22:43:35ID:CQL3qNOs
>>54
俺は初心者の気持ちが良く解る初心者が、
初心者向けに解説を書くことが重要だと思いますがね。

自分を見つめなおすという点でも復習になるし、
解説を書く場合は、
自分の知識を整理する必要もあります。

もし、あんたが高校生で学生さんなら、
今日、学校で先生に習ったことを誰かに解説してごらんよ。

そしたら、成績が驚くほど上がりますので・・。


この勉強法が一番効果的だったりするんですよ。(^^
0072名前は開発中のものです。2010/09/19(日) 22:46:00ID:HRu9uwmo
>>65
無駄に読み込んでるもんが多すぎるんじゃない?
リピートしてほしいならもう少し軽くすべきだよ。
0073名前は開発中のものです。2010/09/19(日) 22:49:09ID:mQc8C3MV
重さより内容を改善しろよ
本気で初心者のこと考えてるなら間違った解説なんかすんなよ

どうしても解説やりたいならちゃんと勉強してからやれよ
間違ってる部分を指摘されたら直せよ
0074名前は開発中のものです。2010/09/19(日) 22:50:54ID:rnuJJyYf
>>71
ならばもっといい勉強法を教えてあげるよ。
間違ってた部分を消して正しい部分に書き換えるんじゃなく訂正線で間違えた個所を明確にしつつ
直前か直後に正解を書くといいよ。
何事も勘違いや間違いをしやすい場所ってのはあるから注意を促せるようになる。
それを他の初心者が見ればわかりやすいしな。
0075名前は開発中のものです。2010/09/19(日) 22:51:05ID:puHU3Noo
>>71
今日は学校休みです><
0076名前は開発中のものです。2010/09/19(日) 22:52:56ID:CQL3qNOs
あああ
0077名前は開発中のものです。2010/09/19(日) 22:53:50ID:puHU3Noo
>>76
とうとう頭が…
0078名前は開発中のものです。2010/09/19(日) 22:55:58ID:CQL3qNOs
重い理由は、HTTPアップロード率が高いからです。

解説に画像を多様しているから重たいのです。


一応、あなたのために表示記事数を減らして
軽くしておきました。
0079名前は開発中のものです。2010/09/19(日) 22:58:15ID:puHU3Noo
>重い理由は、HTTPアップロード率が高いからです。
意味不明
0080名前は開発中のものです。2010/09/19(日) 22:59:12ID:HRu9uwmo
>重い理由は、HTTPアップロード率が高いからです。

いや、意味わかんないから。
あんたんとこのサイトは四六時中アップロードしてんのか。
0081名前は開発中のものです。2010/09/19(日) 23:03:43ID:CQL3qNOs
まあ、これでも聞いて待っててください。


ニコニコ動画時代から追っかけして人は、
これ懐かしいですねww
0082名前は開発中のものです。2010/09/19(日) 23:06:35ID:CQL3qNOs
アップロードとは、パソコンからサーバにデータをアップすることですね?

これをサーバ側視点で考えると、
サーバは、あなたのパソコンにデータをアップロードしていることになります。

この状態のことを、
HTTPアップロードと言います。


HTTPアップロード率が高いとは、
アクセスが集中しているからです。

そんな場合のブログでの改善方法として、
簡単なのは、トップに表示させる記事数を減らせばいい。
0083名前は開発中のものです。2010/09/19(日) 23:09:54ID:puHU3Noo
>>82
RFCとWikipediaと解説サイト読んで来い
なめてんのか
0084名前は開発中のものです。2010/09/19(日) 23:11:20ID:L6rs6mPf
さすが自称WEBデザイナですね!何でも知ってる(笑)
0085名前は開発中のものです。2010/09/19(日) 23:11:58ID:D1MHS56n
次は何の解説すんのー?
0086名前は開発中のものです。2010/09/19(日) 23:12:32ID:jhkvVFNp
なかなか凝った仕掛けで面白いサイトですね。
でも、サイト名を「間違い探しサイト」にすることをオヌヌメします。
よい子が勘違いしないように。念のため。
あと、間違い投稿掲示板と、リピーター獲得のために正解者プレゼント
も欲しいところ。
0087名前は開発中のものです。2010/09/19(日) 23:13:54ID:HRu9uwmo
>>82
最初からアクセスが集中してるからって言った方がわかり易いよ。
10万PV/日位は軽く超えてんのかな。今時無料のとこでもその位は捌けるし。
あとページ毎の情報少ないから、更に削ったら何もなくなっちゃいそうだけど。
0088名前は開発中のものです。2010/09/19(日) 23:17:31ID:puHU3Noo
TOPページにカウンタ設置希望
0089名前は開発中のものです。2010/09/19(日) 23:20:54ID:CQL3qNOs
あの頃のニコ厨さんたちの加熱っぷりは凄かったですね。

結局、あの動画、5万回以上再生されたんだっけ?

そして、ニコニコ動画でコミュを開いたら、
一日で90人の人がコミュに入会して、
結局、290人ぐらいの人が入会したんだっけ?

その中にあなたも含まれていたんですね。


あれは、ニコ厨さんたちのゲーム製作の関心を物語っていると思う。

みんなの期待に答えるべく、
あの頃はゲーム制作動画をニコニコ動画にアップしていました。


そんな状態の俺に嫉妬して、
散々、邪魔してコミュを二回もぶっ壊してくれたのが、
あなたですよね?

きっと旧コミュのメンバーさんたちは、
残念なキモチになったと思うよ?


本当にヒドイ人だよあんたは・・。
0090名前は開発中のものです。2010/09/19(日) 23:22:09ID:puHU3Noo
>>89
おーい
誰に向かって話してるの?
0091名前は開発中のものです。2010/09/19(日) 23:22:44ID:zk+nudI+
3DRPGマダー?
0092名前は開発中のものです。2010/09/19(日) 23:23:15ID:cfjyn4G0
www.kazuki-sendo.comのコンテンツが
市販本の内容とあまりにも類似していることを指摘します。

http://www.dotup.org/uploda/www.dotup.org1154761.zip.html
0093名前は開発中のものです。2010/09/19(日) 23:24:31ID:puHU3Noo
>>92
類似どころか丸写しじゃねーか
0094名前は開発中のものです。2010/09/19(日) 23:26:30ID:CQL3qNOs
ああ。
ごめんごめん・・。

なんでもありません。


じゃあ、今から記事書きますね。


1時間以内にはアップされてると思います。
0095名前は開発中のものです。2010/09/19(日) 23:28:43ID:D1MHS56n
>>94
おいおいやめてくれよ・・・
モノホンのアレだったらこっちもなんか申し訳ないよ
0096名前は開発中のものです。2010/09/19(日) 23:29:26ID:HRu9uwmo
>>92
乙、フイタw
0097名前は開発中のものです。2010/09/19(日) 23:33:58ID:zk+nudI+
>>92
とうとう丸パクしやがったな>kazuki
C言語の値の代入すら理解してなかったグズがハードウェアT&Lとか背伸びしようとするからw

コピペ世代ってこういうこと普通にやりそうで怖いな
0098名前は開発中のものです。2010/09/19(日) 23:35:30ID:puHU3Noo
ますます次の解説が楽しみだ
0099名前は開発中のものです。2010/09/19(日) 23:35:38ID:L6rs6mPf
クソワロタ

DirectXのサンプルプログラム、3Dデータときて今度は書籍の丸パクリかよ
0100名前は開発中のものです。2010/09/19(日) 23:40:41ID:x2pbDAwx
>>89
>散々、邪魔してコミュを二回もぶっ壊してくれたのが、
自分で勝手に閉鎖した癖に何を言い訳してるんだ
しかも2回目のコミュは何の連絡も無く突然閉鎖してメンバーの反感を買ってるし
そして3回目は1〜2日くらいで中断
何もかも他人のせいにして情けない奴ここに極まる
0101名前は開発中のものです。2010/09/19(日) 23:41:38ID:puHU3Noo
アフォから犯罪者に格上げか。
0102名前は開発中のものです。2010/09/19(日) 23:50:07ID:mQc8C3MV
書籍どころかドラクエのライアンの歩行グラをスクショから切り取って
「素材ができました(キリッ」とかやってたもんな
0103名前は開発中のものです。2010/09/19(日) 23:52:40ID:zk+nudI+
根っからの糞だったのかw
まあ、わかってはいたけどな
ただのアフォなら救いようがあるけどこれはもうねw
0104名前は開発中のものです。2010/09/20(月) 00:26:42ID:TSB9RtrO
いやコレ本当に中学生とかじゃないの? 30代ってホント?
0105名前は開発中のものです。2010/09/20(月) 00:27:23ID:ehqXKNay
>>104
精神年齢が中学生以下なのは確実
0106名前は開発中のものです。2010/09/20(月) 00:37:17ID:0PP3VNsK
>>92
何これ?

ちょっと見てくる。

0107名前は開発中のものです。2010/09/20(月) 00:44:42ID:0PP3VNsK
おいおいおいおいww


ガキかよお前w

俺のサイトの内容を勝手にキャプターして、
ネットに公開してるから、
これ著作権法違反だぞ?

おまけにどこかの本の内容まで
写真撮影して無断でアップしているのかよ。

これだからガキは・・・・。


お 前 が 今 犯 罪 者 だ ぞ ?

解っててやってる?


悪いことは言わない。
今すぐ消してきなさい。

通報してバレたら一発でアウトです。

俺、こういうのには厳しいから、
厳しく取り締まらせて頂きます。
0108名前は開発中のものです。2010/09/20(月) 00:45:07ID:uOYqy3lC
>89
5万?
せいぜい数千だろ?
累計でとかわけのわからない屁理屈はいらないからな
0109名前は開発中のものです。2010/09/20(月) 00:47:04ID:rk3WRXlr
キャプターってどこの言ですか?
0110名前は開発中のものです。2010/09/20(月) 00:48:33ID:ehqXKNay
>>107
人の事言えないな
お前のサイトの文章もアウトだぞ^^

>俺のサイトの内容を勝手にキャプターして、
>ネットに公開してるから、
>これ著作権法違反だぞ?
頭ダイジョーブ?
0111名前は開発中のものです。2010/09/20(月) 00:48:33ID:0PP3VNsK
こういう下らないことをするから、
俺はお前が大嫌いなんだよ。


妙なことせずに、
普通に健全に荒らしをしてなさい。

無断でアップするだけならまだしも、
それをやった犯人をここで堂々と公言するとか。。

本当にお前大丈夫か??

お前みたいな考え方で、
軽い気持ちで世間を渡っていたら、
そのうち、マジで痛い目に合うから気をつけた方がいい。
0112名前は開発中のものです。2010/09/20(月) 00:50:18ID:0PP3VNsK
俺は見なかったことにしておいてあげるから、
次から、こういうマネはやめること。

それだけは約束してくれ。


それ以上は言わないからさ・・。

ホント、マジで勘弁してほしいよ・・。
0113名前は開発中のものです。2010/09/20(月) 00:51:49ID:uOYqy3lC
>>1は誰と戦ってるの?
0114名前は開発中のものです。2010/09/20(月) 00:52:58ID:0PP3VNsK
俺が極悪非道なヤクザだったら、
あんたみたいな人を遠慮なくカモにするかもね(^^;


悪いことは言わない、
次から気をつけない。

ホント、相手が俺みたいな優しい人でよかったね。
0115名前は開発中のものです。2010/09/20(月) 00:55:05ID:ehqXKNay
>悪いことは言わない、
>次から気をつけない。
何に?
0116名前は開発中のものです。2010/09/20(月) 00:58:15ID:ehqXKNay
何これ?
解っててやってる?
解っててやってる?
解っててやってる?
ちょっと見てくる。

悪いことは言わない。
ホント、相手が俺みたいな人を遠慮なくカモにするかもね^^;

こういう下らないことをするから、
軽い気持ちで世間を渡っていたら、
次から気をつけた方がいい。
ホント、相手が俺みたいな考え方で、
あんたみたいな優しい人でよかったね。
0117名前は開発中のものです。2010/09/20(月) 01:03:59ID:0PP3VNsK
解説というのは、
同じことを解説すれば、
同じような内容になります。


そして、俺は主にネットでググって調べて
学んで、それをメモって参考にして解説を書いています。

本もネットも何にも見ないで
新しい知識を得ることなんて不可能なことです。

今日、書店に並んでいる解説本の筆者も、
どこかの誰かが一番最初に説明を書いた本なり記事なりを参考に勉強して、
新たな知識を身に付けて書いています。

だから、似てて当たり前。


多分、俺が参考にしたサイトの解説を運営している人が、
たまたま、その本の解説を参考にして解説を書いていて、
それを見て学んだ俺が、また解説を書いているから、
似たような解説になってるんじゃないの?


これのどこが犯罪なんだよ。

軽々しく犯罪という言葉を持ち出すものではない。
0118名前は開発中のものです。2010/09/20(月) 01:04:35ID:ehqXKNay
>だから、似てて当たり前。
一字一句同じなんですが
0119名前は開発中のものです。2010/09/20(月) 01:05:35ID:p01Q1cpS
著作権の話するなら、せめてサイトに載せてるMAD動画どうにかしてからにしろよ
0120名前は開発中のものです。2010/09/20(月) 01:05:38ID:G1YrHPCT
逆ギレワロタ
0121名前は開発中のものです。2010/09/20(月) 01:05:48ID:ehqXKNay
解説になってるんじゃないの?
だから、似てて当たり前。
これのどこが犯罪なんだよ。
これのどこが犯罪なんだよ。
今日、書店に並んでいる解説本の解説を書いています。
多分、俺が、また解説を書いていて、
それを見て学んだ俺が参考にしている人が、
似たような内容になります。
そして、俺が、また解説を書いています。
本もネットも何にも見ないで
新しい知識を身に付けて書いている人が、また解説を参考に勉強して解説を運営して解説を書いた本なり記事なりを参考にした
サイトの解説を書いた本なり記事なりを参考にしたサイトの解説を参考に勉強している人が、
同じような内容になります。
軽々しく犯罪という言葉を持ち出すものではない。
今日、書店に並んでいる解説本の解説を書いているから、
それをメモって参考にしたサイトの解説を書いています。
多分、俺が参考に勉強して解説を運営しているから、
同じことを解説すれば、
どこかの誰かが一番最初に説明を書いています。
多分、俺は主にネットでググって調べて
学んで、それを見て学んだ俺が、また解説を書いた本なり記事なりを参考にして、
新たな知識を身に付けて書いています。
本もネットも何にも見ないで
新しい知識を得ることなんて不可能なことです。
0122名前は開発中のものです。2010/09/20(月) 01:06:38ID:0PP3VNsK
ま。

んなこと、どーでもいいけどね。

好きなように言ってればいいんじゃないの?


そんなことより、ようやく記事が完成した。(^^

今、非公開状態で最終チェックしています。
0123名前は開発中のものです。2010/09/20(月) 01:08:58ID:ehqXKNay
kazukiたん(^ω^)ペロペロ
次は何の解説?
0124名前は開発中のものです。2010/09/20(月) 01:13:47ID:0PP3VNsK
参考までに、その本のタイトルを教えてください。

出版社を調べておきます。
0125名前は開発中のものです。2010/09/20(月) 01:18:49ID:IoZlbWf+
kazukin本当はしってるくせに〜
プーッ!
0126名前は開発中のものです。2010/09/20(月) 01:22:20ID:0khaL2Qr
>>124

15歳からはじめるDirectX 9 3Dゲームプログラミング教室 C++編―Windows 2000/XP/Vista対応 [単行本]
大槻 有一郎 (著)

出版社: ラトルズ (2007/04)
ISBN-10: 489977186X
ISBN-13: 978-4899771869
発売日: 2007/04
0127名前は開発中のものです。2010/09/20(月) 01:23:54ID:rk3WRXlr
あんたねぇ、main関数は一番下に書かなければならないなんて、
大嘘書いてんじゃないわよ。いまどきそんな嘘オカマだって気づく
っちゅうの。そんなことより、あたしお尻痒くてしようがないのよ。
あんた、ちょっとあたしのお尻の穴掻いてくれない?
0128名前は開発中のものです。2010/09/20(月) 01:26:46ID:ehqXKNay
更新キタ━(゚∀゚)━!
早速間違い発見
0129名前は開発中のものです。2010/09/20(月) 01:29:10ID:0PP3VNsK
>>126
ありがとう。

ちょっと、今からその出版社に通報してきます。


そうそう。
さっき新しい解説をアップしてきました。

どうぞ、ご覧ください(^^
0130名前は開発中のものです。2010/09/20(月) 01:31:17ID:ehqXKNay
>ちょっと、今からその出版社に通報してきます。
どうせそんな度胸無いんだよね。
まず相手にされないだろうし
0131名前は開発中のものです。2010/09/20(月) 01:34:34ID:YFIZ1rZ6
マクロb www
しかも実行時メモリに定義されちゃってる雰囲気だしwwwww
0132名前は開発中のものです。2010/09/20(月) 01:35:07ID:FLEKFsTh
http://www.kazuki-sendo.com/game/wp-content/uploads/9-7.jpg
この図、間違ってませんか?
> 20は30より大きいので真
0133名前は開発中のものです。2010/09/20(月) 01:35:47ID:p01Q1cpS
あんだけ言われてまだマクロの意味が分かってないのかよ
0134名前は開発中のものです。2010/09/20(月) 01:38:09ID:FLEKFsTh
>>133
マクロスとか言ってたな
0135名前は開発中のものです。2010/09/20(月) 01:39:11ID:0PP3VNsK
>>130
メールを一本送るだけだよ。

相手にされなければ、それはそれでいいよ。


そもそも、そんなことそんなに興味ないしね。


俺はルールを守らないことが嫌いなだけです。

まっすぐで熱い男なんです。
0136名前は開発中のものです。2010/09/20(月) 01:40:23ID:0PP3VNsK
メールは、さっき送っておいた。


あとのことは俺は一切知らん。


さて、歯磨いて寝るか(^^
0137名前は開発中のものです。2010/09/20(月) 01:41:57ID:YFIZ1rZ6
真=1 みたいに断言するのはどうかと思うわ、C言語歴5ヶ月目の俺でも。
0138名前は開発中のものです。2010/09/20(月) 01:42:27ID:IoZlbWf+
kazukin的には
#defineで確保されるメモリって何byteだと思ってるの?
0139名前は開発中のものです。2010/09/20(月) 01:44:18ID:bG0rwZOU
これネタスレだよな?
誰かそうだと行ってくれ...
0140名前は開発中のものです。2010/09/20(月) 01:45:10ID:0PP3VNsK
>>132
眠いので明日確認します。


では、お休み。
0141名前は開発中のものです。2010/09/20(月) 01:51:48ID:FLEKFsTh
初  め  ま  し  て。

メールで失礼します。Kazukiという者です。

貴社より3年前発行された、25歳からはじめるDriectY 7 1Dゲムプログーラミング教室 C--編
という書籍についてですが、この本には、俺が数カ月前に執筆した
「DirectZの歴史」という記事と非常に酷似している部分がある。

これはこの本の筆者が俺の記事をパクったに違いないです^^;wwwうえwwうえww


是非ともこれは直してもらいたいと思っています(キリッ
俺は、こういう点は厳しい男なんです。俺がヤクザだったら、筆者をカモにしてますww

そもそも、出版社であるはずの貴社がこんなパクリ本を許容してもよろしいのですか^^;
この件についてはしっかり考えて貰いたいと思います。    では(^^
0142名前は開発中のものです。2010/09/20(月) 02:05:14ID:0PP3VNsK
あ。そうそう。

さっきメールで通報したけど、
あんたが犯人とは言ってないから安心しなさい。
ここのスレのことも内緒にしておいてあげてるからな。(^^

俺も鬼じゃないんだ。


たまたま、アップローダに、
無断公開してるファイルを見つけたのでご報告いたしました。

ということにしておいてあげてるよ。(^^

感謝しなさい。


ではまた。
0143名前は開発中のものです。2010/09/20(月) 02:09:05ID:FLEKFsTh
華麗にスルーされたぜ
0144名前は開発中のものです。2010/09/20(月) 03:03:51ID:imURypgH
a=a+(b>20);
↓こう書き換えるべき
if(b>20)
{a++;}
0145名前は開発中のものです。2010/09/20(月) 03:26:48ID:JDqAfrLM
>>92
丸コピじゃねぇかw
こいつは自分の著作権には過敏に反応するくせに(ログサイトとかもそう)
人の著作物は平気でぱくるよな
前のマップパクリとかさ
0146名前は開発中のものです。2010/09/20(月) 03:36:02ID:uOYqy3lC
>>144
比較演算の返す値を示したいんじゃないか?
それならそれで

int a=1>2;
printf("%d",a);

とかでいいんだろうが
というかいちいち代入をa=a+bでやってるあたり
理解してないから応用出来ないんだろうな
0147名前は開発中のものです。2010/09/20(月) 03:39:12ID:JDqAfrLM
多分kazukiは真=1じゃないっていっても信じてくれないんだろうなぁ
0148名前は開発中のものです。2010/09/20(月) 03:57:49ID:d2fwGT9E
代入をa=a+bでやるのが何で問題なんだ
0149名前は開発中のものです。2010/09/20(月) 04:15:25ID:TSB9RtrO
変数 a のメモリが確保されてそこに値 (0なり1なり) が代入されるのと同じレベルで
マクロ b にメモリが確保されてそこに 30 が入る、と理解してるのか
0150名前は開発中のものです。2010/09/20(月) 04:16:19ID:G1YrHPCT
プリプロセッサなんてなかった
0151名前は開発中のものです。2010/09/20(月) 04:19:52ID:TSB9RtrO
>>148
それは問題じゃないけど、条件式の値を変数に代入したいだけなのに、a = 0 として
からそれに条件式の値を加算するのは変
0152名前は開発中のものです。2010/09/20(月) 04:22:17ID:TSB9RtrO
変数 a と同じレベルでマクロ b にもメモリが確保されるなら、&b でそのアドレスが
取得できそうなもんだな

つか b が左辺値でもおかしくないはず。ランタイムで動的にマクロを書き換えるプログラムとか
書けそうだww
0153名前は開発中のものです。2010/09/20(月) 04:28:21ID:JDqAfrLM
>>151
あまりにもアレで気づかなかったわ
なんて無駄な事をしてるんだろう
しかも、文中で
a=a+(b>20)を
真偽値をaに代入
と説明してる
なんか、代入をやっぱり理解出来てない臭いがするぞ…
0154名前は開発中のものです。2010/09/20(月) 04:28:35ID:ioukBWfm
こいつ30代ってマジかよ…20代だと思ってたわ…

んで、出版社から訴えられてこいつ逮捕されるのいつ?
0155名前は開発中のものです。2010/09/20(月) 07:03:15ID:v94mftR6
ここは非常に愉快なインターネッツですね
0156名前は開発中のものです。2010/09/20(月) 07:04:34ID:o7Tp16jr
パクったのは明らかだけど、流石にここまでみみっちいことで訴訟を起こせるほど出版社も暇じゃないだろう。

ってか見つけた人乙。
0157名前は開発中のものです。2010/09/20(月) 08:33:24ID:0zuQeEep
サンプルうpは渋るのに検証画像隠蔽は迅速なのねw
0158名前は開発中のものです。2010/09/20(月) 09:14:15ID:v94mftR6
まさかとは思うけど#defineが定数しか定義できないと思ってるんじゃ・・・?

#define KAZUKI printf("ばーか")

int main()
{
KAZUKI;
return 0;
}

こういうのもできるって次の解説に載せていいですよ^^
0159名前は開発中のものです。2010/09/20(月) 09:21:19ID:xROXV7Sr
この程度ならどちらも引用の範囲内にあたるだろうから著作権的には
問題ないだろう、サンプル丸ごとアップとかならまだしも

と言うか著作権著作権言っているのに画像アップローダーにある
アップテストとか書かれているエロゲ?の壁紙は一体なんなんだ
0160名前は開発中のものです。2010/09/20(月) 11:26:58ID:bpUzygt4
参考文献すら載ってないのに引用とか言われてもな
0161名前は開発中のものです。2010/09/20(月) 11:33:26ID:TSB9RtrO
自分の文章として使ってしまったら引用とは言わん
0162名前は開発中のものです。2010/09/20(月) 11:42:20ID:gAkdYKQD
結構盛り上がってたみたいだけど、そろそろ>>1のバックレ終了かな。
0163名前は開発中のものです。2010/09/20(月) 12:03:15ID:l6dkS8+9
訴訟には普通なんないけど
警告と取り下げ要求はいくよな
0164名前は開発中のものです。2010/09/20(月) 13:44:13ID:Gz9vL13a
何でこの部分だけ盗作なんだろう
解説は間違いだらけでも自身で書いてあるのに

あとヤクザ云々言い出すと恐喝になるぞ
0165名前は開発中のものです。2010/09/20(月) 14:25:47ID:JDqAfrLM
自分の言葉で書けるだけの理解も出来なかったんだろう
0166名前は開発中のものです。2010/09/20(月) 14:35:00ID:Qg7Op/A5
>>92
GJですぞ
0167名前は開発中のものです。2010/09/20(月) 15:40:17ID:0PP3VNsK
今回はかなり重要なことを言ってますね。

あの解説で一番伝えたかったのは、
ifとか比較演算子ではなくて
「値を返す」の部分です。

ifなんて実際のプログラムではほとんど使わないしね。(^^


あと、C言語の計算は「後ろから前にむかって」の前回の解説が、
ここで生きてくる。

なんだか、ちょっとずつプログラムっぽくなってきたでしょ?

少しずつ少しずつ解らないようにレベルを上げていくから、
気が付いた時には、初心者が中級者レベルに成長していると思う。

なんて、初心者に優しい解説だろうか(^^
0168名前は開発中のものです。2010/09/20(月) 15:43:57ID:0PP3VNsK
で、ですね?

こんな基本的な知識を、
Direct3Dという高度な技術に置き換えて考えてみるのです。

Diect3Dのメソッドを呼び出すの部分は、
基本的な構造体で解説する。

難しい単語が並んでいるけど、
要はこういうことなんですよと。

で、各領域に格納した値を料理するわけだ。

使わない部分は、NULLを格納するだけです。
と言えばいい。
0169名前は開発中のものです。2010/09/20(月) 15:47:38ID:JDqAfrLM
>ifなんて実際のプログラムではほとんど使わないしね。

一つでもプログラム組んだことある奴はこんなこと言えねぇ
0170名前は開発中のものです。2010/09/20(月) 15:50:34ID:JDqAfrLM
で、一つ気になるから教えてくれ
なんでb>20の真偽値をaに入れるのに
int a=0;
a=a+(b>20);
ってコードにしたの?
0171名前は開発中のものです。2010/09/20(月) 15:51:03ID:0PP3VNsK
難しくて複雑に見えるゲームプログラムも、
基本の基本であるC言語に戻って考えれば、
誰でも理解できる。

理解できれば誰でも「プログラムが組める=ゲームが作れる」
なので、ゲームプログラミングは、
そんなに難しくない。


まだ解説していないけど、
そういったプログラムをループさせて実行させて、
「ある条件」に達したらそのループを抜けて、
別の関数に移り、
またそこでループを繰り返す。


ゲームプログラムの正体はループです。

何千、何万回とループを繰り返しているのが、
ゲームプログラミングです。

その中に、DirectXという高度な技術を使用しているだけ。

俺はそれが理解できた時に、「なるほど!!」と思ったね。(^^

そんな気分を味あわせてあげるよ。
0172名前は開発中のものです。2010/09/20(月) 15:52:15ID:FLEKFsTh
>>168
普通にif文のオンパレードな訳だが…
いや、使わなくても出来無い事は無いけどさ
0173名前は開発中のものです。2010/09/20(月) 15:53:01ID:0PP3VNsK
>>170
そんなの決まってるじゃないか。

前回のおさらいのために、
初期化を解説しているのです。

何度も出せば、そのうち自然と覚えてくれます。


あと、初期化しないと使えないし・・。

あ。そういうことを言ってるんじゃないのかな?
0174名前は開発中のものです。2010/09/20(月) 15:53:03ID:FLEKFsTh
>ゲームプログラムの正体はループです。
なるほど。ループだけならkazukiでも作れる
0175名前は開発中のものです。2010/09/20(月) 15:53:51ID:FLEKFsTh
a=a+(b>20);
a=b>20;
0176名前は開発中のものです。2010/09/20(月) 15:54:14ID:0PP3VNsK
ifよりも条件分岐の方をよく使います。

あっちの方が便利だしね。

実際のゲームプログラミングも、
条件分岐をよく使って組まれてあったし。
0177名前は開発中のものです。2010/09/20(月) 15:56:15ID:FLEKFsTh
>ifよりも条件分岐
いや、ifが条件分岐な訳だが。
0178名前は開発中のものです。2010/09/20(月) 15:56:50ID:JDqAfrLM
>>173
int a=b>20;
じゃダメなの?
そもそも
int a=0;
が初期化のおさらいだとしても
a=a+(b>20);
にする説明にはならないわけだけど
0179名前は開発中のものです。2010/09/20(月) 15:57:36ID:JDqAfrLM
>>176
条件分岐の基本がifなんだけど
0180名前は開発中のものです。2010/09/20(月) 15:58:48ID:sEiPhw38
#define b 30
これでbを変数aと同じ扱いで説明するのは危険じゃね?

これだとbも変数のように見えてしまう。
そもそもコンパイル後にはbという領域は存在しないはずだし。
0181名前は開発中のものです。2010/09/20(月) 15:59:05ID:TSB9RtrO
> あと、C言語の計算は「後ろから前にむかって」の前回の解説が、

馬鹿もここまで来ると芸と呼べるかもな
0182名前は開発中のものです。2010/09/20(月) 16:01:50ID:0PP3VNsK
なので、ゲームはループを繰り返して、
その実行結果を表示させているので、
何をしないでもパソコンに負担がかかっています。

よし。

じゃあ、試しにスーファミのドラクエ3で、
敵を倒さずに、永遠に続けてごらんよ。

あるターンに達したら、
主人公は力尽きて死んでしまいます。


あと、ファミコンゲームを、
何時間もずっとプレイしててごらん。
ある地点になるとプログラムが起動しなくなるから。
0183名前は開発中のものです。2010/09/20(月) 16:02:36ID:TSB9RtrO
if文よりも条件分岐の方がよく使うとかほんとスゲェな。

0184名前は開発中のものです。2010/09/20(月) 16:03:00ID:FLEKFsTh
>あと、ファミコンゲームを、
>何時間もずっとプレイしててごらん。
>ある地点になるとプログラムが起動しなくなるから。
バグじゃねーか
0185名前は開発中のものです。2010/09/20(月) 16:04:05ID:0PP3VNsK
>>178
え??

何を言ってるの?

a=a+(b>20);


これだけだと使えないに決まってるじゃんw

int型を指定していないんだし。

ん?そういうことを言ってるのではないの?
0186名前は開発中のものです。2010/09/20(月) 16:05:32ID:0PP3VNsK
>>184
バグじゃねーよwwww


そういう構造になってるの。
どのゲームでもそうなるよ。

ホント、解ってないな(^^;


でも、これであなたのレベルが解りました。
0187名前は開発中のものです。2010/09/20(月) 16:07:05ID:JDqAfrLM
>>185
>そもそも
>int a=0;
>が初期化のおさらいだとしても
初期化のおさらいとしてaを0で初期化したとしても

>a=a+(b>20);
>にする説明にはならないわけだけど
次の行でa+(b>20)を代入する説明にならない

ってこと
0188名前は開発中のものです。2010/09/20(月) 16:08:38ID:sEiPhw38
>>186
いや、ほんとにレベルが解ったよw
0189名前は開発中のものです。2010/09/20(月) 16:09:00ID:FLEKFsTh
>>186
一度ゲーム作ってみろ
0190名前は開発中のものです。2010/09/20(月) 16:09:35ID:JDqAfrLM
さらに言うと真偽値をみたいだけなら
printf("%d",30>20);
で問題ないんだけどな
なんでわざわざ一度変数に入れたのかね
0191名前は開発中のものです。2010/09/20(月) 16:11:00ID:FLEKFsTh
>>190
解説サイトに一度もprintfが出てないし、使い方分からないんじゃないかな?
0192名前は開発中のものです。2010/09/20(月) 16:11:39ID:FLEKFsTh
ん!?何いってんだ俺;;
頭が逝ってしまったようです
0193名前は開発中のものです。2010/09/20(月) 16:13:26ID:TrTl0m0a
重症だな
0194名前は開発中のものです。2010/09/20(月) 16:14:40ID:QMHXPV8W
http://bit.ly/axFSXV
0195名前は開発中のものです。2010/09/20(月) 16:14:58ID:0PP3VNsK
ちなみにC言語はプログラミングの基本だから。

多分、C言語が理解できれば、
他の言語でも応用が利くと思う。

だから、C言語はプログラムの登竜門なのだ。


まあ、他の言語はまだ知らないけど、
PHPとかC言語によく似てると思う。

似たような単語が出てくるしね。
0196名前は開発中のものです。2010/09/20(月) 16:16:37ID:TrTl0m0a
>>195
>多分、C言語が理解できれば、
お前には永遠に無理だろうな
0197名前は開発中のものです。2010/09/20(月) 16:18:39ID:0PP3VNsK
>>189
俺は誰かが作ったゲームプログラムを自己流で解析して、
それを改良してプログラムを組んだりして、
プログラムを理解しました。

なので、成長スピードが
教科書を1ページから勉強している人とは全然違う。


だって、もうゲームが完成していて答えが完成しているんだし。

答え >> その意味を知る

これが俺の勉強法の基本かな?
0198名前は開発中のものです。2010/09/20(月) 16:19:52ID:JDqAfrLM
で、
なんでaにb>20の値を代入するのに
a=a+(b>20)
ってしてるの?
説明してよ
0199名前は開発中のものです。2010/09/20(月) 16:21:56ID:p01Q1cpS
真面目に本読んで、コード書いて、実行して、と勉強してれば、C言語の基本くらいなら
3日もあればだいたい押さえられる
4か月も経って代入やら定数やらの意味も理解できてないのは相当のバカ
0200名前は開発中のものです。2010/09/20(月) 16:23:34ID:o7Tp16jr
>>197

> なので、成長スピードが
> 教科書を1ページから勉強している人とは全然違う。

4ヶ月もやっててこのレベルなら確かに全然違うね。
0201名前は開発中のものです。2010/09/20(月) 16:23:44ID:TrTl0m0a
>>197
4ヶ月かかってこれか。可哀そうに
0202名前は開発中のものです。2010/09/20(月) 16:24:56ID:sEiPhw38
>>197
その自己流の解析方法を解説するべきだろ。
現状の>>1の理解度だとCを理解してるとは言い難いぞ。

まぁ、誰かが作ったゲームを解析してとか言ってるけど
適当に他人のソースを改変して作ったってだけだろ。

その方法は学習法としては効果はあるはずだが、現状の>>1の状況では
「プログラムを理解しました。」とか言いきっちゃうのはまずいw
成長スピードがすごいと思うのも途中の段階で「ゴールに到達した」とか
勘違いしてるからだよw

>>1が解析した元のソースを書いた人は今現在の>>1よりはるかに高次元の
存在だってことに気が付くべきだw
0203名前は開発中のものです。2010/09/20(月) 16:26:31ID:TrTl0m0a
>適当に他人のソースを改変して作ったってだけだろ。
前スレ>>478,480で、改変するほどの能力もないって分かってる
0204名前は開発中のものです。2010/09/20(月) 16:31:25ID:0PP3VNsK
詳しいことは言えないけど。

あるところで、
何でもいいからゲームプログラムのコードを入手して、
そのコードを見てごらんよ。


最初は、複雑で驚くかもしれないけど、
それに臆することなく、
一つ一つの意味を知れべてご覧なさい。

そしたら、プログラミングがもっと詳しく知ることが出来ると思う。


そうやって中級者の壁を越えて、
上級者になるのです。
0205名前は開発中のものです。2010/09/20(月) 16:32:28ID:TrTl0m0a
>そうやって中級者の壁を越えて、
>上級者になるのです。
まず、初心者を脱出して、初級者になることから始めようか。
0206名前は開発中のものです。2010/09/20(月) 16:34:04ID:TSB9RtrO
>>197

だまされたと思って

#include <stdio.h>

#define b 30

int main()
{
int a = b > 20;
printf("%d\n", a);

return 0;
}

で実行してみてくれ。で、なんでこうじゃなくて int a = 0; a = a + (b>20); にしたのか説明してくれ。
0207名前は開発中のものです。2010/09/20(月) 16:34:44ID:sEiPhw38
>>1の世界だと中級の壁を超えるとオーバーフローして初心者に戻れるみたいだな。
さすがループカウンタを放置してゲームが止まるのが普通な世界の住人w
0208名前は開発中のものです。2010/09/20(月) 16:35:03ID:0PP3VNsK
>>187
ごめん。。

難しくて何を言いたいのかよく理解できない・・。


とにかく、真は1、偽は0と理解してください。
0209名前は開発中のものです。2010/09/20(月) 16:35:37ID:TrTl0m0a
>>208
>とにかく、真は1、偽は0と理解してください。
きみはじつにばかだな
0210名前は開発中のものです。2010/09/20(月) 16:36:23ID:JDqAfrLM
>>208
>>198
あと>>206も分かりやすいね

ちなみに比較演算子は真の時1を返すけど、真=1では無いよ
0211名前は開発中のものです。2010/09/20(月) 16:37:10ID:TSB9RtrO
DXライブラリは認めないけど他人のコードを丸パクリするのはおーけーなわけか
0212名前は開発中のものです。2010/09/20(月) 16:38:58ID:0PP3VNsK
>>206
意味なんて、ねーおww

そうやって解説したいから、
そうやって解説しただけ。

>>206のソースも、
俺が組んだソースも同じ意味じゃないか。


多分、そのソースでも同じ結果になると思う。

1が表示されると思う。

ごめん。悪いけど解りきってることだから、
試す気にもなりません。
0213名前は開発中のものです。2010/09/20(月) 16:39:58ID:sEiPhw38
>>212
この姿勢が成長しない原因なんだよなw
0214名前は開発中のものです。2010/09/20(月) 16:41:07ID:0zuQeEep
同じ結果になることが争点じゃないわけで
わかりやすい解説をするのに無駄があるから突っ込まれたわけで
0215名前は開発中のものです。2010/09/20(月) 16:41:47ID:TrTl0m0a
>>212
代わりに俺が
http://ideone.com/CTv0V
0216名前は開発中のものです。2010/09/20(月) 16:42:25ID:JDqAfrLM
int a=0;
a=b>20;
ならまだわからんでもないが
int a=0;
a=a+(b>20);
はb>20を代入するというコードにおいて正解とは言い難いなぁ
結果は同じだけど
0217名前は開発中のものです。2010/09/20(月) 16:43:14ID:0PP3VNsK
>>211
なぜ、俺がDXライブラリを認めないのかというと。

あれは誰かが作ったライブラリなんです。


ライブラリでプログラムを組んで理解している気になっていたら、
きっとどこかで大きな落とし穴にはまると思う。

例えば、DXライブラリでウィンドウを表示させるには、
なんだっけ?

1行のコードを書くだけで良かったでしょ?

でも、あれは、そのコードを書くことで、
そういう結果になるように組まれているだけです。

もっと踏み込んだところを知らなきゃダメです。
0218名前は開発中のものです。2010/09/20(月) 16:44:32ID:TrTl0m0a
>>217
stdio.hもライブラリ
Win32APIもライブラリ
DirectXもライブラリ
0219名前は開発中のものです。2010/09/20(月) 16:45:55ID:0PP3VNsK
よし。

じゃあ、DXライブラリに対抗して、
いつか、俺がKAZUKIライブラリを作ってあげるよ。
0220名前は開発中のものです。2010/09/20(月) 16:45:59ID:sEiPhw38
>あれは誰かが作ったライブラリなんです。
最低限、自分でドライバを直接たたいて表示させろってことか。
0221名前は開発中のものです。2010/09/20(月) 16:47:21ID:JDqAfrLM
ドライバも他人の作った奴だからドライバから書こうぜ
そしたらほんとに理解したと言えるし
0222名前は開発中のものです。2010/09/20(月) 16:48:44ID:TrTl0m0a
ドライバも、他人の作ったOSで動くんだぜ
0223名前は開発中のものです。2010/09/20(月) 16:49:30ID:GYlRLzyH
直接vramをたたくしかないな
0224名前は開発中のものです。2010/09/20(月) 16:51:05ID:TSB9RtrO
Windows 使うべきじゃないな。もちろん Linux だろうが DOS だろうが、他人の描いたコードを提供するものは全て排除
0225名前は開発中のものです。2010/09/20(月) 16:51:16ID:jBiXrBQS
>>198

a=a+(b>20);
これについて、Kazukiが説明できない理由は、

www.kazuki-sendo.comのifの説明は、
>>126 の本の丸写しだからです。
そして著者の意図を理解してないから、なにも説明できない。
0226名前は開発中のものです。2010/09/20(月) 16:52:58ID:TrTl0m0a
OSから自作か…
もちろんコンパイラもライブラリを一切使わずに自作だよね
Kazuki製のCコンパイラとか一回使ってみたいww
0227名前は開発中のものです。2010/09/20(月) 16:54:23ID:JDqAfrLM
Cという規格も他人が作ったからKazuki言語作らないと
最終的にはマシン語の勉強かな
0228名前は開発中のものです。2010/09/20(月) 16:54:40ID:gAkdYKQD
他人か作ったものがダメならCコンパイラだってダメじゃん。
まぁ、>>219の発言でわかるように、身の程知らずにもDXライブラリの作者と同格とか思っちゃってんだろ。
0229名前は開発中のものです。2010/09/20(月) 16:54:53ID:G1YrHPCT
マシン語を理解するにはマシンの仕組みからでは?
まずハンダゴテから覚えようか
0230名前は開発中のものです。2010/09/20(月) 16:56:23ID:TSB9RtrO
マシン語だってCPU内のマイクロコード使ってるぞ
0231名前は開発中のものです。2010/09/20(月) 16:57:19ID:JDqAfrLM
となるとCPUの規格から自作か…
0232名前は開発中のものです。2010/09/20(月) 17:02:11ID:0PP3VNsK
あったあった。

ChangeWindowMode( TRUE ) ;


これですね?

DXライブラリはこんな短いコードを書くだけで、
ウィンドウが表示されます。


俺が言いたいのは、
これで満足するんじゃなくて、
このコードのもっと深い意味を理解しましょう。ってことです。


理解できてるなら、
別にDXライブラリだろうが何だろうが、
どのライブラリを使ってもいいよ。

プログラムは膨大なコードを書くことになるので、
ライブラリを使って時間短縮した方がいいに決まってるしね。
0233名前は開発中のものです。2010/09/20(月) 17:03:56ID:bH9qwxA1
>232
じゃあ、説明よろしく。
DirectXでどうやってWindow表示するの?
0234名前は開発中のものです。2010/09/20(月) 17:05:39ID:JDqAfrLM
ていうか前からちょっと気になってたけど
>俺の場合、完成したゲームのあらゆるソースコードを?2?で入手して、
>そこに書かれている意味を一つ一つ調べて学んで行っているからです。
これ"P2Pで入手"か?
P2Pが違法とは言わないけどP2Pで流れてるソースって違法の匂いがプンプンするんだけど
0235名前は開発中のものです。2010/09/20(月) 17:05:52ID:iWUggLim
>>232
ChengeWindowMode=ウィンドウモード変更な?
フルスクリーンとウィンドウモードを切り替える関数だろ
0236名前は開発中のものです。2010/09/20(月) 17:07:18ID:0PP3VNsK
昨日、14歳からシリーズのC言語の本を書店で立ち読みしてきました。

なんか、13歳からシリーズもあったよ。

でも、DXライブラリを使って解説していたので、
「使えねえや・・」と思って、即行で閉じました。


その代わり、DirectX11の新しい解説本を購入してきました。

DirectX11は、まだ使わないけど、
ちょっと理解しておきたいしね。


時代に乗り遅れないために・・。
0237名前は開発中のものです。2010/09/20(月) 17:10:06ID:pkV7CGvL
>DirectX11の新しい解説本

興味深いな、どの書籍か教えてもらえる?
DirectX11の解説本って和書が無いに等しいからな。

0238名前は開発中のものです。2010/09/20(月) 17:10:11ID:TrTl0m0a
>その代わり、DirectX11の新しい解説本を購入してきました。
買ったら満足して、放ったらかしにしてそう。
というか、部屋の隅に同じ本が既に積んであるんじゃね?
0239名前は開発中のものです。2010/09/20(月) 17:10:33ID:0PP3VNsK
>>234
ちょwwwおまwwwww


さすがにノーコメント・・。
0240名前は開発中のものです。2010/09/20(月) 17:10:56ID:gAkdYKQD
>>232
目的と手段を完全に混同してるな。
単にDXライブラリがMS製じゃないからなんとなく嫌なだけだろ。
オプソ嫌いなおっさんみたいな奴だな。
0241名前は開発中のものです。2010/09/20(月) 17:12:32ID:JDqAfrLM
で、まぁP2P使ったかどうかなんて証明できないからどうでもいいんだけどさ
>>198に答えてくれない?
答えないなら>>225で正しいってことでいい?
0242名前は開発中のものです。2010/09/20(月) 17:13:52ID:0PP3VNsK
えっとね。
俺が購入したのは、

「ちょっとだけDirectX11」というタイトルの本です。
筆者は下谷 秀俊てって人です。

この本面白いね。(^^


俺が知りたかったことがたくさん書かれているよ。

まあ、この本は初心者向けではないから、
ある程度、DirectXを理解してないと、
サッパリ理解できないと思いますがね。
0243名前は開発中のものです。2010/09/20(月) 17:14:49ID:TrTl0m0a
・エロゲ厨
・ニコ厨
・東方厨
・解説厨
・割れ厨←new!
0244名前は開発中のものです。2010/09/20(月) 17:15:19ID:0PP3VNsK
>>241
ぶっちゃけ、どうでもいいwww


あんたが正しい!
よ!大統領!ww
0245名前は開発中のものです。2010/09/20(月) 17:15:48ID:pkV7CGvL
>242
それか、悪いけど初心者本だよ。それ
0246名前は開発中のものです。2010/09/20(月) 17:16:56ID:TSB9RtrO
中身を理解してないライブラリを使うのはダメだけど、
他人のコードを理解せず丸パクリで使うのはいいってことか

単なる自己満足以外の何物でもないな
0247名前は開発中のものです。2010/09/20(月) 17:17:59ID:TrTl0m0a
解説(笑)も自己満足だしな。
0248名前は開発中のものです。2010/09/20(月) 17:18:49ID:JDqAfrLM
>>244
自分が間違ってると認めるなら解説直しな
0249名前は開発中のものです。2010/09/20(月) 17:19:25ID:TrTl0m0a
>>241
安い本だなおい
0250名前は開発中のものです。2010/09/20(月) 17:26:28ID:eKQAJJG2
>>1 検索中・・・
0251名前は開発中のものです。2010/09/20(月) 17:33:13ID:0PP3VNsK
>>245
なに!?

この本を初心者向けと言ってのけるのか・・・。
これには、恐れいった。。


俺、マジであんたを尊敬するよ・・。


まあ、他の住人のレベルはどうだが怪しいのだがww

多分、ある程度までならプログラムを理解してて
それに満足している中級者レベルだと、俺は思っている。
0252名前は開発中のものです。2010/09/20(月) 17:35:27ID:TrTl0m0a
>>251
おかえり初心者さん
>>241の答え検索できた?
0253名前は開発中のものです。2010/09/20(月) 17:35:38ID:ioukBWfm
上級者向けのDirectX11本って和書にはまだ無いんじゃね?
0254名前は開発中のものです。2010/09/20(月) 17:37:20ID:TrTl0m0a
http://watery.dip.jp/~slash/0230
レビューがこれぐらいしか出てこない
0255名前は開発中のものです。2010/09/20(月) 17:37:45ID:0PP3VNsK
>>233
悪いが、こんなところで、
DirectXを使ったウィンドウ表示は説明しきれないよ・・。

ゴメンね。

でも、そのうち公式サイトの方で
詳しく解説しますので、ちょっと待っててください。
0256名前は開発中のものです。2010/09/20(月) 17:41:46ID:0PP3VNsK
>>252
何の答えだよ・・。

検索って何を検索?
検索なんて何もしてないよ。

いったい、何が知りたいんだよ。


知りたいことを端的に質問してくれ。

今は、質問の意味すら理解できてない。
0257名前は開発中のものです。2010/09/20(月) 17:42:53ID:ioukBWfm
>>251
とりあえずここのいるヤツの9割くらいはおまいより若くてデキるやつなんじゃね?
0258名前は開発中のものです。2010/09/20(月) 17:44:32ID:0PP3VNsK
よし。

詳しい説明を今から書くからちょっと待っててください。


質問の内容は、

>なんでaにb>20の値を代入するのに
>a=a+(b>20)


これだね?


俺はそう解説したいから、
って言ってんですがね・・。

やれやれ。(^^
0259名前は開発中のものです。2010/09/20(月) 17:45:35ID:JDqAfrLM
>>256
なぜb>20の値をaに代入するのに
int a=b>20;
でも
int a=0;
a=b>20;
でもなく
int a=0;
a=a+(b>20);
というコードを書いたのか
0260名前は開発中のものです。2010/09/20(月) 17:47:44ID:0PP3VNsK
ごめん・・・。

今、真剣に内容を読み直してみたけど、
やっぱり、何が言いたいのか
よく解らん・・。ゴメン・・。


俺の回答、

「そんなのどーでもいい!」
0261名前は開発中のものです。2010/09/20(月) 17:48:56ID:ioukBWfm
>>260
DirectXの勉強に入ってからわからないことが出たらそうやって逃げるのか?クズめ
0262名前は開発中のものです。2010/09/20(月) 17:49:26ID:JDqAfrLM
どうでも良くない。
b>20を代入する場合において
a=a+(b>20)なんてコードは間違いだ。
今回は直前に0で初期化してるから結果は一緒だが、コードの意味が全く違う。
0263名前は開発中のものです。2010/09/20(月) 17:50:39ID:p01Q1cpS
>>260を訳すと、
「なんとか自分の間違いをごまかす屁理屈をひねり出そうとしたけどできなかった。
 そもそも自分がどう間違ってるのかもよく分からない」
ってところか。
0264名前は開発中のものです。2010/09/20(月) 17:52:56ID:0PP3VNsK
>>259
ああ、そういうことか。


つまり、C言語の計算は、
「後ろから前に向かって」考えるからだよ。

int a=0;
a=a+(b>20);


こう書くと、
後ろから読んでね?

(20 > b )a= a


つまりこういうこと。


=の左のaには、0が入ってる。
=の右のaにも、0が入ってる。

でも、=の左のaの0は、初期化の0
「int a=0;」←つまりここの0

=の右のa(実際は=の左のa)は、
初期化の0ではなく、計算結果の0が入る。
0265名前は開発中のものです。2010/09/20(月) 17:54:14ID:TrTl0m0a
小学校も行ってないのか
0266名前は開発中のものです。2010/09/20(月) 17:56:14ID:uOYqy3lC
Cの計算は普通に前から処理されることを知らないかわいそうな子
演算の優先順位って知ってる?
0267名前は開発中のものです。2010/09/20(月) 17:56:42ID:JDqAfrLM
すごい
何がスゴイってなんか理解を超越した間違いしてる
こいつの中では
a+(b>20)

(20 > b )a
同義らしい
やばいプログラミングはおろか数学の基本も超越しちゃってる
0268名前は開発中のものです。2010/09/20(月) 17:57:31ID:TrTl0m0a
>>264
板違い
http://p.tl/o2RP
0269名前は開発中のものです。2010/09/20(月) 17:58:18ID:0PP3VNsK
ああ。
間違ったw

この場合は、答えは1かw

なぜ?こんなことにイチイチ疑問を感じるのだろうか・・。


つまり、同じaを使ってるけど、
aに入ってる値は違うのです。

だから後ろから前に向かって考えてね?ってことです。
0270名前は開発中のものです。2010/09/20(月) 17:58:46ID:ioukBWfm
>>264
後ろから前に向かってって…
どこでどんな解説サイト見たらそんな理解するんだよ…
0271名前は開発中のものです。2010/09/20(月) 17:59:10ID:JDqAfrLM
やばいよこの人
何がおかしいかもわかってないよ
0272名前は開発中のものです。2010/09/20(月) 17:59:32ID:p01Q1cpS
質問の意味も理解してないし説明も思いっきり間違ってるし、どうしょうもないな
0273名前は開発中のものです。2010/09/20(月) 18:10:46ID:0PP3VNsK
a=a+(b>20);

これを

(20 > b )+a= a

こう読む。

なので、20とbと比べて・・。

という風に、一番最後の20から考え始める。

a=a+(b>20);

これを

aは、aプラス、カッコの中。とは読まない。
0274名前は開発中のものです。2010/09/20(月) 18:13:11ID:p01Q1cpS
>>273
間違いすぎてて突っ込みきれない
0275名前は開発中のものです。2010/09/20(月) 18:13:11ID:TrTl0m0a
よーくわかりました^^
さすがッスねKazukiさん!!
0276名前は開発中のものです。2010/09/20(月) 18:13:16ID:0PP3VNsK
ごめんね・・レベルの低い話題になってしまって・・・。


でも、俺はこういう初心者を黙って見過ごせないのよ。(^^;
0277名前は開発中のものです。2010/09/20(月) 18:13:16ID:JDqAfrLM
すげぇ理解だ
まるっきり間違ってる
そもそもプログラム一切知らなくても
b>20

20>b
が違うことぐらい分かるだろ…
0278名前は開発中のものです。2010/09/20(月) 18:14:10ID:TrTl0m0a
不等号とか小学校で習うんじゃね?
0279名前は開発中のものです。2010/09/20(月) 18:16:31ID:0PP3VNsK
そういえば、まだ演算子の優先順位に触れてなかったね。

あとで、ちょこっとだけ解説しますね。
0280名前は開発中のものです。2010/09/20(月) 18:16:52ID:uOYqy3lC
不等号はただのミスだろうからスルーするとして

http://c-production.com/special/04092101.html
>>1はここを100回読んでから自分のレスを読み返してみろ
0281名前は開発中のものです。2010/09/20(月) 18:17:11ID:ioukBWfm
なんだ、こいつは他のレスが見えない病気かなんかなんかなのか?www
0282名前は開発中のものです。2010/09/20(月) 18:18:15ID:JDqAfrLM
こいつの頭の中では
理解出来ないこと=間違ったこと
なんだろう
0283名前は開発中のものです。2010/09/20(月) 18:18:44ID:TrTl0m0a
BaKazuki
0284名前は開発中のものです。2010/09/20(月) 18:19:09ID:gAkdYKQD
頭に疾患があるのはほぼ間違いない。
0285名前は開発中のものです。2010/09/20(月) 18:20:16ID:ioukBWfm
とりあえず理解しておいたことにしておかないと気が狂って死ぬんだろうな
0286名前は開発中のものです。2010/09/20(月) 18:20:48ID:TSB9RtrO
> だから後ろから前に向かって考えてね?ってことです。

じゃあ

#include <stdio.h>

int foo(int a)
{
printf("%d\n", a);
return a;
}

int main()
{
int a;

a = foo(1) && foo(2) && foo(3) && foo(4) && foo(0) && foo(5) && foo(6);
printf("%d\n", a);

return 0;
}

これどんな出力になるか予想してみて。
0287名前は開発中のものです。2010/09/20(月) 18:22:59ID:0zuQeEep
突っ込み側を初心者扱いする事で自我を保ってるのか・・・
0288名前は開発中のものです。2010/09/20(月) 18:23:16ID:ioukBWfm
>>286
気が狂って死んだらどうするんだwwwww
0289名前は開発中のものです。2010/09/20(月) 18:24:55ID:JDqAfrLM
>>286
Kazukiには高度すぎるぞw

多分実際に実行して答えだすけど説明できないってことになると予想
0290名前は開発中のものです。2010/09/20(月) 18:26:18ID:0PP3VNsK
>>286
1
2
3
4
0
0

こんなの常識じゃないか。

試すまでもない。
0291名前は開発中のものです。2010/09/20(月) 18:27:06ID:TrTl0m0a
>>290
どうしてそうなるか説明できないだろ?
0292名前は開発中のものです。2010/09/20(月) 18:27:22ID:TSB9RtrO
なんで後ろから前じゃないの?
0293名前は開発中のものです。2010/09/20(月) 18:27:23ID:JDqAfrLM
さて説明のお時間です
なぜそうなるのかなkazuki君
0294名前は開発中のものです。2010/09/20(月) 18:27:57ID:IoZlbWf+
真=1じゃない事を示すいい証明
0295名前は開発中のものです。2010/09/20(月) 18:28:06ID:JDqAfrLM
予想が的中しそうだw
0296名前は開発中のものです。2010/09/20(月) 18:29:28ID:JDqAfrLM
>>294
さらに実行順序やAND演算の評価範囲まで分かるいい例
0297名前は開発中のものです。2010/09/20(月) 18:31:16ID:ioukBWfm
わかっていることは結果を書いたことで証明しただろ?(^^

とか言ってくるぞw
0298名前は開発中のものです。2010/09/20(月) 18:31:43ID:0PP3VNsK
>>291
めんどくねーな・・。

最初のint fooで、int aを定義、
それを表示
さらにリターンで返す

mainでint型を定義

理論演算子で考える。
それをint aに初期化。

C言語はmain関数から実行されるから、

1
2
3
4
↑コレはmainの実行結果。

0
0
は、上の実行結果。

これでいいかい?
0299名前は開発中のものです。2010/09/20(月) 18:33:33ID:p01Q1cpS
言ってることが滅茶苦茶すぎて訳分からんな
間違ってることだけは確かだが
いったいどういう理解の仕方をしてるんだろうコイツは
0300名前は開発中のものです。2010/09/20(月) 18:33:59ID:JDqAfrLM
めんどくねーならいいだろw
って突っ込みは置いといて
さて君の理解で行くと後ろから順番に読むんでしょ?
なら
6
5

となるはずだよね^^
0301名前は開発中のものです。2010/09/20(月) 18:35:47ID:G1YrHPCT
> 1
> 2
> 3
> 4
> ↑コレはmainの実行結果。
>
> 0
> 0
> は、上の実行結果。

??
初心者の僕に分かるように教えて下さい!!!
0302名前は開発中のものです。2010/09/20(月) 18:36:05ID:ioukBWfm
もしかして: 論理演算子
0303名前は開発中のものです。2010/09/20(月) 18:37:41ID:gAkdYKQD
>>298
おいw、全部mainの実行結果だろ。日本語弱すぎ。
それとfoo(5)とfoo(6)の結果が表示されない理由がないぞ。
0304名前は開発中のものです。2010/09/20(月) 18:39:35ID:0PP3VNsK
さて、ここで一旦休憩です。


こんなレスをしながらも、
俺は、次の解説はどんな感じで解説しようかとか、
今晩の夕飯は何にしようか。とか考えています。

こうやって、あることをしながら、
別のことを考えることは、
プログラミングでも重要な気がします。

ではまたね。
0305名前は開発中のものです。2010/09/20(月) 18:39:43ID:TSB9RtrO
>>298
素晴らしい!
全く理解できてないことを明確にした素晴らしい説明だ

「一番肝心な部分の説明を全部省略」という極上の素材に「int 型を定義」とか「理論演算子で考える」
とか絶妙なスパイスを効かせて、最後に「これでいいかい」で締める

最高だよwwww 腹筋が崩壊した
0306名前は開発中のものです。2010/09/20(月) 18:41:05ID:0PP3VNsK
>>300
ヒント:優先順位
0307名前は開発中のものです。2010/09/20(月) 18:41:13ID:JDqAfrLM
説明できないから逃げるのかw
分かりやすい
休憩明けは
a=a+(b>20)

>>286
の説明をしてもらおうかねぇ
0308名前は開発中のものです。2010/09/20(月) 18:41:23ID:ioukBWfm
>>304
逃げるなクズ
お前の晩飯とかどうでもいいんだよww
0309名前は開発中のものです。2010/09/20(月) 18:42:35ID:o7Tp16jr
>>306
分かってんなら、C言語では必ず後ろから前に計算が起こるとか恥ずかしいこと言ってんな。
0310名前は開発中のものです。2010/09/20(月) 18:43:18ID:JDqAfrLM
>>306
何と何の優先順位かなぁ?

たぶんこいつは>>280のサイト見て必死で理解しようとしたんだろうなww
0311名前は開発中のものです。2010/09/20(月) 18:43:25ID:p01Q1cpS
>>306
優先順位は関係ねーよ
「&&」が持つ特性の問題だ
0312名前は開発中のものです。2010/09/20(月) 18:44:39ID:ioukBWfm
>>306
ヒント じゃねーよww立場わかってんのかwwwww
あとちょっと前の自分と矛盾したこと言ってるよな?人格もいっぱいあるの?ん?
0313名前は開発中のものです。2010/09/20(月) 18:46:22ID:0PP3VNsK
wwwwwwwwwwwwwwww


現在爆笑中ですw

あんたたち本当に面白いね(^^


釣という言葉を知ってるかい?
0314名前は開発中のものです。2010/09/20(月) 18:47:33ID:ioukBWfm
>>313
後釣宣言という言葉を知っているかい?
0315名前は開発中のものです。2010/09/20(月) 18:47:44ID:JDqAfrLM
後釣り宣言ほど滑稽なものはないねww
0316名前は開発中のものです。2010/09/20(月) 18:49:20ID:0PP3VNsK
これはね。
グローバル変数を使っているのです。


int foo(int a)
{
printf("%d\n", a);
return a;
}

これは静的領域を使用。


{
int a;

a = foo(1) && foo(2) && foo(3) && foo(4) && foo(0) && foo(5) && foo(6);
printf("%d\n", a);

return 0;
}

こっちはスタック領域を使用。
0317名前は開発中のものです。2010/09/20(月) 18:50:25ID:JDqAfrLM
さて釣りなら釣りでちゃんと説明できるってことだよね?
ん?もしかして理解できてるってことが釣りなのかな?
大丈夫だよみんな君が理解できてないことは知ってるからw
0318名前は開発中のものです。2010/09/20(月) 18:51:09ID:ioukBWfm
鳩山の「今日は大変いい天気です」を思い出したよ
演算子に触れてねーなwwwwww
0319名前は開発中のものです。2010/09/20(月) 18:51:30ID:0PP3VNsK
グローバル変数ってのは、
どこでも呼び出せると言ったよね?

なので、スタック領域の各fooには、
グローバル変数を呼び出しています。


foo(0)

多分、ここで引っ掛けるつもりだったのかな?

甘いね。
0320名前は開発中のものです。2010/09/20(月) 18:52:29ID:uOYqy3lC
えっ
グローバル変数とか
何言ってんのこの人
0321名前は開発中のものです。2010/09/20(月) 18:53:05ID:p01Q1cpS
どこにグローバル変数があるんだ?
0322名前は開発中のものです。2010/09/20(月) 18:53:44ID:0PP3VNsK
>>321
え?????


あるじゃないか。
0323名前は開発中のものです。2010/09/20(月) 18:54:54ID:ioukBWfm
誰がグローバル変数の話しろって言ったんだよwwwwwwwwwwwwwwwwww
0324名前は開発中のものです。2010/09/20(月) 18:55:10ID:JDqAfrLM
もう超理解すぎてついていけねぇ
グローバル変数とか無いしw
0325名前は開発中のものです。2010/09/20(月) 18:55:16ID:p01Q1cpS
>>322
俺の目にはローカル変数しか見えないが
0326名前は開発中のものです。2010/09/20(月) 18:55:40ID:ioukBWfm
>>322
グローバル変数の幻覚が見えてるからはやく病院に行こうね
0327名前は開発中のものです。2010/09/20(月) 18:56:20ID:G1YrHPCT
>>325
俺もローカル変数しか見えない
0328名前は開発中のものです。2010/09/20(月) 18:57:09ID:TSB9RtrO
演算子の優先順位(および結合性)とオペランドの評価順序は別問題なので、「優先順位」は答になってない
もちろん「グローバル変数」も無関係

つかグローバル変数なんてひとつも出てこない。
0329名前は開発中のものです。2010/09/20(月) 18:57:20ID:JDqAfrLM
すごいな
俺らは
>つまり、C言語の計算は、
>「後ろから前に向かって」考えるからだよ。
を否定するための問題かと思いきや
さらに右斜め上のグローバル変数とかの間違いをしだす

0330名前は開発中のものです。2010/09/20(月) 18:57:37ID:G1YrHPCT
グローバル変数があると言い張るなら、どこで宣言してるのか教えてくれるかなー?^^
0331名前は開発中のものです。2010/09/20(月) 18:58:24ID:0PP3VNsK
ほらw

これが釣だよwww


今回は後だし釣じゃないよね?w
0332名前は開発中のものです。2010/09/20(月) 18:59:12ID:0zuQeEep
釣りをするときはメール欄か縦読みで「釣り」って仕込んでくれ。
0333名前は開発中のものです。2010/09/20(月) 18:59:28ID:G1YrHPCT
後出し釣りの意味すら分かってねえ基地外がいるぞ
0334名前は開発中のものです。2010/09/20(月) 18:59:45ID:0PP3VNsK
いやいや。

ごめんごめん。
冗談です。
0335名前は開発中のものです。2010/09/20(月) 18:59:51ID:ioukBWfm
ほら、あれだ、main関数内で宣言した変数は全部グローバル変数になるコンパイラでも使ってるんだよwwww
0336名前は開発中のものです。2010/09/20(月) 19:00:12ID:sEiPhw38
ほんとにグローバル変数があるのか見直しちゃったじゃないかw
まさかint foo(int a)のaがグローバル関数とか言うなよ?w
0337名前は開発中のものです。2010/09/20(月) 19:01:00ID:G1YrHPCT
結論:理解できてない
0338名前は開発中のものです。2010/09/20(月) 19:01:44ID:ioukBWfm
int a; ←たぶんこれをグローバルだと思ってるんじゃね?
0339名前は開発中のものです。2010/09/20(月) 19:03:20ID:TSB9RtrO
グローバル変数云々が「釣り」だとしたら、後出し釣り以外の何物でもないぞ

というかさ…釣りだろうがなんだろうが、結局のところ kazuki クンが正解を出せていない
ことに変わりはないわけなんだが

  本当は正解がわかってるけど「釣り」としてわざと間違った答えを出した

のなら、その「本当はわかってる正解」を提示できるはずだろ。
0340名前は開発中のものです。2010/09/20(月) 19:04:53ID:0PP3VNsK
>>338
違 い ま す 。

さて、メシにするか(^^
0341名前は開発中のものです。2010/09/20(月) 19:05:44ID:G1YrHPCT
逃げたwwwwクソワロタwww
0342名前は開発中のものです。2010/09/20(月) 19:07:00ID:JDqAfrLM
相変わらず逃げ足だけは早いね
0343名前は開発中のものです。2010/09/20(月) 19:07:22ID:0PP3VNsK
まあ、これでこのスレの住人のレベルが
ハッキリしたことは間違いない。
0344名前は開発中のものです。2010/09/20(月) 19:08:17ID:gAkdYKQD
そろそろ飽きてきたな。
0345名前は開発中のものです。2010/09/20(月) 19:08:51ID:0PP3VNsK
俺はレスをしながら、
あなた方のレベルを探ってるの。

でも、もう十分わかったから、もういいよ。
0346名前は開発中のものです。2010/09/20(月) 19:09:20ID:/Qev/0UJ
じゃ、どれぐらいのレベルなのか言ってごらん
0347名前は開発中のものです。2010/09/20(月) 19:09:40ID:JDqAfrLM
そう思っているのは自分だけ
可哀想な子だね
0348名前は開発中のものです。2010/09/20(月) 19:09:50ID:0zuQeEep
そもそも探ってどうすんの?
0349名前は開発中のものです。2010/09/20(月) 19:10:52ID:uOYqy3lC
>>348
見下すため
0350名前は開発中のものです。2010/09/20(月) 19:11:25ID:gAkdYKQD
>>348
自分のバカさを確認するためとか、>>1がマの中でも最底辺であることが確認されたわけだが。
0351名前は開発中のものです。2010/09/20(月) 19:11:45ID:G1YrHPCT
>>350
マですらねえよ
0352名前は開発中のものです。2010/09/20(月) 19:12:01ID:sEiPhw38
>>1をマとか呼ぶなよw
0353名前は開発中のものです。2010/09/20(月) 19:12:55ID:gAkdYKQD
ごめんなさい。
0354名前は開発中のものです。2010/09/20(月) 19:16:03ID:0PP3VNsK
>>347
上のあの人は超上級者レベルの人
多分、現役のゲーム会社のプログラマーじゃないかな?

そもそも出たばかりのDirectX11が理解できていることに驚いています。
多分、日本でも数人しかいないんじゃないかな?

そして、あなた方は、中級者レベル。
現役プログラマーにはとても見えないということ。

そして、俺は、初心者でも中級者でも上級者でもない。
ふわふわした存在。

上級者レベルのことを知ってるかと思えば、
入門者レベルのことも知らなかったりする。

これが俺の分析結果。
0355名前は開発中のものです。2010/09/20(月) 19:17:50ID:0PP3VNsK
とりあえず、俺は「素人」ってことでいいでしょ。

その方が解りやすい。うん。
0356名前は開発中のものです。2010/09/20(月) 19:18:14ID:+PtyrZu+
みんな。もっと生温かく見守ってあげようよ
0357名前は開発中のものです。2010/09/20(月) 19:18:20ID:/Qev/0UJ
脳みそが少なすぎてふわふわしてるのね
0358名前は開発中のものです。2010/09/20(月) 19:18:25ID:TSB9RtrO
foo(int a) の a がグローバルだと思ってるのなら、予めグローバル変数で a を定義しておいたらどうなるのかな

#include <stdio.h>

int a = 5963; // グローバル変数 a を予め定義

int foo(int a) // この a がグローバル (上の a と同じ) だと思ってるなら
{
printf("%d\n", a);
return a;
}

int main()
{
int b = foo(1) && foo(2) && foo(3) && foo(4) && foo(0) && foo(5) && foo(6);
printf("b : %d\n", b);
printf("a : %d\n", a); // その幻想をぶち殺す

return 0;
}
0359名前は開発中のものです。2010/09/20(月) 19:18:43ID:G1YrHPCT
無理かな
0360名前は開発中のものです。2010/09/20(月) 19:19:22ID:JDqAfrLM
こいつの頭の中ではDirectXだけでプログラマーのレベルが決まるんだな
0361名前は開発中のものです。2010/09/20(月) 19:22:18ID:ioukBWfm
帰ってきたらなんかほざいて逃げとるwwwwwwwwwwwwwwwwwwwww
じゃあどれをグローバルだと思ってたのかお聞かせいただきたいところだな
0362名前は開発中のものです。2010/09/20(月) 19:23:55ID:ioukBWfm
ちょっとまて

>上級者レベルのことを知ってるかと思えば、  ←
>入門者レベルのことも知らなかったりする

なんか上級者っぽいこと言ったことあるか?wwwww
0363名前は開発中のものです。2010/09/20(月) 19:26:53ID:uOYqy3lC
注:
本に書いてあることを知識として知ってるだけです
理解に達してないので応用は出来ません
御注意ください
0364名前は開発中のものです。2010/09/20(月) 19:28:01ID:yBk4qTKX
突っ込みどころ多すぎるけど

>>176
「ifより条件分岐」ってエスパーするとswtich文?
それやめた方がいいよ、BASICみたいな書き方してるならまだしも
0365名前は開発中のものです。2010/09/20(月) 19:31:02ID:0PP3VNsK
>>363
好きなだけ言ってろw

全部、解説していくから。

本当はC言語を飛ばして、
DirectXから解説しようと思ったけど、
それではいけないと思ったので基本の基本であるC言語から解説を始めることにしました。

結果、それは大正解だった。

自分の解釈間違えに気づくことができましたしね。

俺は着実に力を付けていっています。


いつか、あなた方を越えてるかもね。(^^
0366名前は開発中のものです。2010/09/20(月) 19:32:49ID:hjX4PyUc
>>364
DirectXのメインループ内で、メッセージ処理する時しか使ってないからだろうな
0367名前は開発中のものです。2010/09/20(月) 19:33:23ID:+PtyrZu+
なかなか珍しい敗北宣言だな。あれだけ罵っておいて謝るなんて
0368名前は開発中のものです。2010/09/20(月) 19:33:55ID:gAkdYKQD
着実に力って、まだハードルらしいハードル出てきてないじゃん。
0369名前は開発中のものです。2010/09/20(月) 19:38:24ID:ioukBWfm
>>365
致命的な解釈間違えしている分際で解説しようとしてんじゃねーよ
0370名前は開発中のものです。2010/09/20(月) 19:40:40ID:yBk4qTKX
>>22で「ATOM」とか「BOOT」って言ってて
>>25でATOMに関して突っ込みしてくれた方がいたけど

もしかしてBOOTじゃなくてBOOLって言いたいのかしら
眼科行った方がいいよ!
0371名前は開発中のものです。2010/09/20(月) 19:41:07ID:IoZlbWf+
C言語解説したら解釈間違えに気づいたんで結果大正解

オナニーに付き合わされる初心者の気持ちも考えてやってくれよ
0372名前は開発中のものです。2010/09/20(月) 19:41:45ID:RJ4jvRnB
winmainとか言い出したら発狂しそう
というかStandard Input/Output Headerを越えられそうにないな
リアルタイムなEvent-Driven設計とか見てみたい

すたじおえっち! おまじない!
0373名前は開発中のものです。2010/09/20(月) 19:42:16ID:/Qev/0UJ
KazukiさんのおかげでC言語に対する勉強意欲が湧きました!ありがとうございます!
0374名前は開発中のものです。2010/09/20(月) 19:42:24ID:p01Q1cpS
間違えたことに気づいても直そうとしないから意味ないな
0375名前は開発中のものです。2010/09/20(月) 19:55:02ID:ioukBWfm
       ,,--'''""`ヽ'   -/"~   ̄`ヽ、
     /       ヾ''"         ~`ヽ
    /       _,,,...  ヽ;:  /""ヽ    ヽ
   /         ;'"  "\ l /;:;;:::-'''ヽ,   i
  /         /,,--:-'''''"~:::::::::::::::::::::::::::ヽ,   .|
 /        /;:;;:::'''::::::::::::::::::::::::::::::::::::::::ヽ  ヽ
 |         |::::::::::::::::::::::::::::::::::::::::::::::::::::::::ヽ  | 
/        ;/   :::::::::::、::::::::::::::::::::::::::::::;/ ヽ  i, 
/        ;:;:ヽ   ::::::::\::::::::::::::::::::::::/   ヽ  i, 
i          / )(   ::::\;;::::::::::::;/ ,,-'''ヽヽ ヽ  
|          |  ⌒ ,;''"'''-;,_ \l,::,l/ !" ●) |  | >>1 俺のサイトに糞スレ立ててんじゃねーぞ、糞ガキ!
|          |.   ( ●   >>><< `"''''''  |  | 
|         ;:|     "''''''''""^     \   |  |
|         ヽ.        ゝ( ,-、 ,:‐、)  |  |
 |       /ヾ..       /   ,--'""ヽ  |  |             ___,,,:--'''''"
 |          |       .//二二ノ""^ソ   |  |    _,,,..::---'''""""~~
..  |        `、ヽ     ヘ`\┼┼┼ ,!ヽ --==ニニ二,
   |         ヽ\     \"ヽ-;:,,,,,,ノ /  / |     "`''''''-----:;,,,,,,,,,_______,,,,,,
   |          l  `ー、_   \,,,,,__,,,ノ /ヽ./
   ヽ.        :人    ヽ-、  ∴∵  / |ヽl
   /;:;:;:;;:;:;: _/  `ー-、    "'====---''",.-'" \ー---
      ,.-'"  \:      \      .,.-''"     |
0376名前は開発中のものです。2010/09/20(月) 20:13:38ID:0PP3VNsK
俺が作ったゲーム動画をさっき見てきたんだけど、
あれ見てたら、
スターソルジャーが作りたくなってきた・・。

よし。
ゲーム第一弾は、スターソルジャーを作ってみることにします。(^^

スターソルジャー2というタイトルにすると、
さすがに版権ものでダメだと思うので、
「スターシューティン」とかのタイトルにしようかな?(^^

まずは、ファミコンゲームから挑戦しよう。


それが出来たら、東方っぽいシューティングゲームを作ってみたいと思います。

もちろん、解説しながら作っていきます。
0377名前は開発中のものです。2010/09/20(月) 20:16:43ID:imURypgH
なんでもいいからさっさと作って
ソース公開よろ
0378名前は開発中のものです。2010/09/20(月) 20:23:19ID:d2fwGT9E
int a=0;
a=a+(b>20);

はそんな突っ込む所ではないと思う
0379名前は開発中のものです。2010/09/20(月) 20:24:44ID:yBk4qTKX
あれか、演算子に関しては「小学生でもわかるように」説明しなきゃないのか…

12 / 2 * 6 = ?
この場合、除算と乗算の優先度は同じなので左から順に計算します

12 / (2 * 6) = ?
この場合、除算と乗算の優先度は同じなので左から計算されます"が"
括弧内の式が優先されるので括弧内の式を先に計算します

また加算と減算の優先度は除算、乗算より低いので
「12 + 2 * 6」の場合は「2 * 6」が先に計算され
「12 + 12」として計算します

なお算術演算子は加算<減算<乗算<除算<剰余の順に優先度が高くなります
これはプログラム言語においても例外ではありません。ないよね?

よって>>264
>>C言語の計算は「後ろから前に向かって」考える
というのは間違いになります
0380名前は開発中のものです。2010/09/20(月) 20:26:25ID:PwXEM5lE
こいつパクり根性が染み付いてるしコード書けるなんて誰も信じてないから
ソースでもバイナリでも出たら出展捜索大会だな
0381名前は開発中のものです。2010/09/20(月) 20:28:45ID:PwXEM5lE
>>379
こいつ==知らないんだよ
そんだけ
0382名前は開発中のものです。2010/09/20(月) 20:30:14ID:0PP3VNsK
>>380
何を言ってんだよww


さて、そろそろ次の解説でも作るとしよう。

俺のサイトでは、
新たな解説を作ってるときは、
毎回、準備中の動画をトップに表示させておくことにします。
0383名前は開発中のものです。2010/09/20(月) 20:36:23ID:/Qev/0UJ
さっさとゲーム作れよ
0384名前は開発中のものです。2010/09/20(月) 20:39:14ID:VIJpcxdi
>>1のような勉強の仕方でマトモなゲームなど作れる訳がない。
せいぜい人のものをパクってリソースを差し替えたりパラメータ
を弄るぐらいが関の山だ。
ことゲ製に限っては、勉強の仕方に近道などない。
0385名前は開発中のものです。2010/09/20(月) 20:39:22ID:0PP3VNsK
今、公式サイトのアクセス解析をしてみて驚いた・・(^^;
すげぇな・・これは・・。

とんでもないアクセス数になっています。

よし!みんなの期待に答えるため、
俺!がんばる!!


>>373
ありがとう。
励みになります。
0386名前は開発中のものです。2010/09/20(月) 20:40:05ID:IoZlbWf+
シューティングはもう出来てるって言ってたじゃん
なんでまた作るの?
3Dのシューティング作っちゃったから?
0387名前は開発中のものです。2010/09/20(月) 20:40:59ID:/Qev/0UJ
>>385
お前の様にならないためにって意味だよ
驕れんな
0388名前は開発中のものです。2010/09/20(月) 20:41:33ID:ioukBWfm
>>382
解説できるレベルじゃねーだろはやく過去作のソースうpれカス
0389名前は開発中のものです。2010/09/20(月) 20:43:31ID:0PP3VNsK
>>386
うん。まだちゃんとしたゲームは作っていません。

自機を動かして、
弾撃って敵をやっつける。

こんなのしか作っていません。


ゲームというのは、
ちゃんとスタート画面が表示されて、
ボタンを押せば、ゲームメイン画面が表示されて、
敵をやっつけたら点数が追加されていって、
最後までクリアできたら、エンディングが表示される。というもの。

そういうのを丸々一本作ってみたくなった。


東方はちょっと難しいから、
まずは、ファミコンゲームのシューティングから行きまーす!
0390名前は開発中のものです。2010/09/20(月) 20:45:39ID:ioukBWfm
お得意のコピペで龍神録のソース持ってきていじれば東方っぽいもんくらいなら簡単に作れるぞ?

ああ、DirectXを直接叩くんでしたね^^
0391名前は開発中のものです。2010/09/20(月) 20:46:01ID:p01Q1cpS
>>382
>俺のサイトでは、
>新たな解説を作ってるときは、
>毎回、準備中の動画をトップに表示させておくことにします。
さすが著作権に厳しいkazukiさん
0392名前は開発中のものです。2010/09/20(月) 20:48:01ID:0PP3VNsK
>>387
そんなこと言うなよ。

こんな敵だらけのところで
レス付けるだけでも、
2chに慣れてない人からすれば、結構勇気いると思うよ。

そんなキモチを察して「ありがとう」という言葉をその人に送っただけ。
0393名前は開発中のものです。2010/09/20(月) 20:51:14ID:IoZlbWf+
>>389

数ヶ月かけてようやく基本的なシステム作り終わったから
俺もシューティング作ってみるわ!
がんばろうぜ!
0394名前は開発中のものです。2010/09/20(月) 20:53:24ID:IonUW+dM
シューティング作るの?じゃあ俺も!
と言いたいところだけど素材が手間だな…
0395名前は開発中のものです。2010/09/20(月) 20:53:52ID:ioukBWfm
>>373>>387が同一人物であるということに気づいてないあたりIDなんて見てないんだろうな
0396名前は開発中のものです。2010/09/20(月) 20:55:54ID:/Qev/0UJ

まあ実際やる気が出たってのは確かなんだがな
0397名前は開発中のものです。2010/09/20(月) 21:00:02ID:JDqAfrLM
真性馬鹿は何についても馬鹿なんだな
0398名前は開発中のものです。2010/09/20(月) 21:08:32ID:HHenXYSU
ここだけ勢いがダントツとか
終わったな
0399名前は開発中のものです。2010/09/20(月) 21:08:45ID:yBk4qTKX
>>379を頑張って分かってもらえるように書いたのにスルーされた><。
このままじゃ>>1の3DRPGにおけるダメージ処理とかバグっちゃう!
0400名前は開発中のものです。2010/09/20(月) 21:30:32ID:0PP3VNsK
>>379
ごめんよ。
縦読みしてました。

「後ろから前に向かって」は、俺のオリジナルの解釈です。
多分、こんなこと言ってる解説はどこにもないと思う。

でも、俺の場合そうやって考えた方が解りやすかった。

計算は、「後ろから前に向かって」が基本で、
そこに、各演算子の優先順位が加わって順番が変わるのです。

*は+より先に計算される。
( )を使った場合は、( )の中を先に計算する。

それを=の左に移すのです。

a = a +(b+1)

これを

a + (b+1) = a

こんな感じで算数みたいに考えてはいけない。

小学校や高校までの計算式で考えると、
=の左右は同じって意味ですね?

0401名前は開発中のものです。2010/09/20(月) 21:41:14ID:yBk4qTKX
>>400
ふむ

>>381さんが軽く教えてくれてますが
プログラムにおいては「=」は代入で
算数・数学における「=」はプログラムにおいては「==」となっております

故に算数・数学における「12 / 2 * 6 = 36」は
プログラムにおける「36 == 12 / 2 * 6」と考える事が出来まして
文章で説明するなら、12 / 2 * 6 = 36は
左から順に12 / 2を計算した後に6と乗算した結果は36と「等価」であるとなります

文章で説明するならば、 a = a + (b + 1)は
b + 1を先に計算した後にaと加算し、その答えをaに「代入」するとなります

よ!
0402名前は開発中のものです。2010/09/20(月) 21:43:22ID:TSB9RtrO
C の = は代入演算子であって数学の等号とは違うものだってだけのことで「後ろから前に云々」とは全然関係ない話だわな
0403名前は開発中のものです。2010/09/20(月) 21:43:58ID:KOYHA8wF
a = a +(b+1)

a ← a +(b+1)
このように解釈する。
この←は、「代入」と呼ぶ。
矢印がASCIIコードに無いから 代わりに「=」を使う。
イコールの場合は、「==」
これがC言語のルールです。

ルールを守れなければ、違法エラーになります。
0404名前は開発中のものです。2010/09/20(月) 21:45:50ID:FBgjHnqX
>>400
だから後ろから前じゃねぇっつうの
>>286
の結果で分からないの?
0405名前は開発中のものです。2010/09/20(月) 21:45:58ID:KOYHA8wF
小学校や中学校でプログラムを書いている子もたくさんいるから、
あまりにも変なことを書くと、ガキに馬鹿にされるよ。
0406名前は開発中のものです。2010/09/20(月) 21:50:10ID:WrM+PpRx
kazukiはエターナルフォースブリザード打ちすぎだろ
0407名前は開発中のものです。2010/09/20(月) 21:52:25ID:0PP3VNsK
>>403
いや。だから、



でしょ?

後ろから前に考えているじゃないですか。

=が代入演算子って説明だと、

a = a +(b+1)


この場合、左のaを右に代入してるの?ってなる。

もっと噛み砕くと、

1 = a

こんな計算式は存在しない、
でも算数や数学では存在する。

素人はこんなところで疑問を感じるものなんです。

小学校や高校で、
そうやって教わってきたからね?
0408名前は開発中のものです。2010/09/20(月) 21:56:46ID:KOYHA8wF
kazukiは中学校を卒業してないように思う。
ヒキコモリで部屋に閉じこもっていたんでしょ

コンパイラ内部で後方からスタックに積んで、2パス目に前方から処理する
手法も有りますが、C言語はC言語のルールで書かないと違法です。
0409名前は開発中のものです。2010/09/20(月) 22:02:58ID:0PP3VNsK
まあいいよ。
こんな基礎的なこと、どうだって。

入門者に理解させるための工夫と思ってください。


ふう。今日はもう疲れた。

今日はこれで落ちます。


いつかもっとレベルの高い会話をしていることを、
切に願います。
0410名前は開発中のものです。2010/09/20(月) 22:03:28ID:JDqAfrLM
>>407
代入演算子の演算が右から左ってだけで
計算順序は左から右だから
0411名前は開発中のものです。2010/09/20(月) 22:03:42ID:yBk4qTKX
ありえん(笑)
0412名前は開発中のものです。2010/09/20(月) 22:05:19ID:JDqAfrLM
基礎的な事が間違ってるから指摘受けてるのに
0413名前は開発中のものです。2010/09/20(月) 22:05:36ID:WrM+PpRx
単に代入演算子の優先順位が低いから右からやってるように見えるだけじゃねぇのけ?
とりあえず足し算引き算より掛け算割り算のほうが先に計算されたよね?
演算子ごとの優先順位の話であって基本は左から右じゃねぇのかな?
0414名前は開発中のものです。2010/09/20(月) 22:07:00ID:p01Q1cpS
入門者に誤解させるための工夫だろ
0415名前は開発中のものです。2010/09/20(月) 22:07:34ID:sEiPhw38
入門者の工夫とか言って嘘教えるなよ。

数学(算数)の=はC言語では==を使うようになってます。
そしてC言語の=は「=の右側の計算結果を左側の変数に代入する」という記号です。

これでいいだろ。無理に数学(算数)の=と同じものだって教えるなよ。
0416名前は開発中のものです。2010/09/20(月) 22:08:28ID:VIO4RZby
どうでもいいよそんなことってこれまでに何回言ったw

前スレでレベルの高い会話()って結構あったけど
kazukiは理解できなくてスルーしてたじゃんw
0417名前は開発中のものです。2010/09/20(月) 22:08:30ID:KOYHA8wF
「代入」の概念は、C言語参考書の始めのあたりで解説するのですが、
それをまだ理解していないのでしょうね。

Kazukiさんは、日本語が不自由なのでしょうか?中国人のような印象があります。
中国系のフォーラムは主とか使いますし、考え方も中国人に似ています。
0418名前は開発中のものです。2010/09/20(月) 22:09:46ID:JDqAfrLM
しかし>>280のサイト見た上で
後ろから前って言ってるなら
ほんと、プログラマの才能皆無だな
0419名前は開発中のものです。2010/09/20(月) 22:10:21ID:yBk4qTKX
>>410氏も言ってるけど
代入演算子は右オペランドの値を左オペランドに代入します
変数 = 式 という形をとり、式によって求められた結果を
変数が示すオブジェクトに代入します

この事から、算数・数学的な12 / 2 * 6 = 36を
プログラム的な36 = 6 * 2 / 12と言う風に考えると
勘違いしたのではないかと思いました まる
0420名前は開発中のものです。2010/09/20(月) 22:11:39ID:C/DXzIIZ
>>410
右から左ってよりも、右辺から左辺という言い方の方がいいかもね
プログラミング言語の代入の=は方程式の=とは違うから、最初はa=a+1いう表現に自分も戸惑った
0421名前は開発中のものです。2010/09/20(月) 22:11:40ID:VIJpcxdi
とても聞き分けの悪い子をもった親の気分だ。
0422名前は開発中のものです。2010/09/20(月) 22:14:10ID:JDqAfrLM
聞き分け悪すぎるだろ
0423名前は開発中のものです。2010/09/20(月) 22:15:19ID:0PP3VNsK
>>416
俺にとっちゃ、今やってる会話レベルは、
本当に、どーでもいい。


ホント、マジで。。
0424名前は開発中のものです。2010/09/20(月) 22:15:52ID:yBk4qTKX
敵意を抱かないようにして教えてみたけど だめでしたー
0425名前は開発中のものです。2010/09/20(月) 22:16:50ID:KOYHA8wF
データ型も理解していないように思われます。
基礎はきちんと覚えないといけませんよ
0426名前は開発中のものです。2010/09/20(月) 22:16:59ID:VIO4RZby
>>423
だからお前はこの程度の会話レベルですら
ついてこれていないって事だよ
0427名前は開発中のものです。2010/09/20(月) 22:18:20ID:0PP3VNsK
>>424
そんなことないよ。

ttp://www.kazuki-sendo.com/game/?p=598
ここでちゃんと演算子の解説をしてるじゃないか。
0428名前は開発中のものです。2010/09/20(月) 22:19:41ID:JDqAfrLM
Kazukiが理解できてないと分かった事
・定数
・代入
・演算順序
・グローバル変数

0429名前は開発中のものです。2010/09/20(月) 22:22:13ID:JDqAfrLM
あとenumも理解してなかったな
マクロとか言ってたし
0430名前は開発中のものです。2010/09/20(月) 22:22:20ID:p01Q1cpS
前スレで指摘されるまでは

b + 10

でbに10が代入されると思ってたくらいだからな
0431名前は開発中のものです。2010/09/20(月) 22:23:05ID:0PP3VNsK
>>428
そういうことは、次の解説を読んでから言ってほしいね。


また重要なことを解説していますので。。

明日中にはアップされてると思うよ。
0432名前は開発中のものです。2010/09/20(月) 22:23:07ID:yBk4qTKX
>>427
それは単項の「書き方」とか「使い方」の説明なのです
0433名前は開発中のものです。2010/09/20(月) 22:23:59ID:sEiPhw38
プリプロセッサも理解してない。
0434名前は開発中のものです。2010/09/20(月) 22:24:18ID:JDqAfrLM
>>430
俺的にはそれをまだ理解してないから
bをaに代入するのに
a=a+b
なんてコードを書いたんだと思ってる
0435名前は開発中のものです。2010/09/20(月) 22:25:48ID:wmOTy5Ni
>>434
なるほど
0436名前は開発中のものです。2010/09/20(月) 22:26:13ID:ioukBWfm
こんな馬鹿が世の中に入るんだなー
基本がどうでもいいとか言っちゃったよ理解できてないくせに
0437名前は開発中のものです。2010/09/20(月) 22:28:44ID:0PP3VNsK
>>434
なんでだよ。

a=0;
b=0;
a=a+b

これなら、

1.bに0を入れる
2.=の右のaに0を入れる
3.計算結果を=の左のaに入れる

って考えれば後ろから前に向かって考えれるじゃないか。
0438名前は開発中のものです。2010/09/20(月) 22:29:54ID:KOYHA8wF
知恵遅れであることは、問題にしません。
間違ったなら、正しく修正しなければなりません。
そして、ルールは守らなければなりません。

どちらかと言うと人間としての躾が出来ていないようです。
0439名前は開発中のものです。2010/09/20(月) 22:31:03ID:TSB9RtrO
代入演算子特有の話を「C言語では式は後ろから前に計算される」と書いてしまうのがkazuki流

代入演算子の話に限っても、= の左辺値と右辺値がどっちが先に評価されるかは決して「後ろ
から前に」ではないはずだが (多分、処理系依存)。


でもって、「後ろから前に」を仮に認めるとしても、それが

  a = b>20

と書かずに

  a = a + (b>20
0440名前は開発中のものです。2010/09/20(月) 22:31:19ID:TrTl0m0a
今から風呂入ります
0441名前は開発中のものです。2010/09/20(月) 22:31:38ID:ioukBWfm
>>437
とりあえず学習能力と説明能力に致命的な障害があることはわかった
0442名前は開発中のものです。2010/09/20(月) 22:31:43ID:yBk4qTKX
代入演算子だけは(他にあったらごめんだけど)
変数 = 式のように書くのだよ!

でも「式」は算数、数学と同じように評価するのだよ!

代入演算子の「演算子」って言う言葉に惑わされちゃいけない!
0443名前は開発中のものです。2010/09/20(月) 22:31:57ID:TSB9RtrO
>>439途中で書き込んじまった。


 a = a + (b>20)

と書いてしまうことの理由にならない
0444名前は開発中のものです。2010/09/20(月) 22:32:19ID:WrM+PpRx
単純に

a=1-4;

ではどうよ?
4-1じゃなくて1-4だよね?
0445名前は開発中のものです。2010/09/20(月) 22:32:26ID:JDqAfrLM
>>437
なんでだよ
って言いながら
bをaに代入する時に
a=a+bとする理由に全くなってないんだけど
0446名前は開発中のものです。2010/09/20(月) 22:32:59ID:0PP3VNsK
俺は前までは

a=0;
b=0;
a=a+b

こんな場合、

1.bに0が入る
2.それを=の右のaに入れる
3.最後に=の左のaに入れる

と間違えて理解していた。

これが解っただけでも
一歩前進です。

大人の階段を一歩ずつ上っていきましょう。
0447名前は開発中のものです。2010/09/20(月) 22:36:24ID:JDqAfrLM
なんかほんとに質問の意味がわからない様なので
すごーくわかりやすく書いてみると

bをaに代入する時に
どうしてaとbを足してaに代入したの?
って事
0448名前は開発中のものです。2010/09/20(月) 22:36:54ID:0PP3VNsK
>>444
うん。そうだよ。

a=4;
b-1;
a=b-a;

この場合は、

1.aに4が入る
2.bに1が入る
(この時点では計算していない)

3.演算子の優先順位で計算して
4.最後に=の左のaに答えが入る
0449名前は開発中のものです。2010/09/20(月) 22:37:14ID:yBk4qTKX
int a,b;
a = a + b;
を考える場合は a = a + bの式を先に評価…つまり「a + b」を先に計算し
その結果をaに代入する って事ですね!
0450名前は開発中のものです。2010/09/20(月) 22:37:41ID:ioukBWfm
そんなに何行も使って力説せんでも「右のa+bの結果が左オペランドのaに入る」みたいなんでいいんじゃね
0451名前は開発中のものです。2010/09/20(月) 22:40:32ID:0PP3VNsK
これは脳内での考え方の問題だと思う。

物には順序があって、
その順番にことは進んでいる。

その順番を言っているんだよ。

まあ、コンピュータの計算は一瞬の世界だけどね。

その一瞬の世界を俺はコマ送りで考えて、より細かく考えているわけです。
0452名前は開発中のものです。2010/09/20(月) 22:41:27ID:JDqAfrLM
あくまでも後ろから前じゃないと気に食わないのかこいつは
cの演算は
演算子の優先順に前から後ろに演算するの。
で、代入演算子に関しては右オペランドから左オペランドに代入するってだけ。

順番はあくまでも
前から後ろ!左から右!
0453名前は開発中のものです。2010/09/20(月) 22:42:32ID:TrTl0m0a
>>451
デバッガでトレースしてみたら、演算の順番とか分かるんじゃないか?
0454名前は開発中のものです。2010/09/20(月) 22:42:37ID:JDqAfrLM
これで理解してもらえなかったら俺の説明能力じゃもう無理だ
0455名前は開発中のものです。2010/09/20(月) 22:44:03ID:ioukBWfm
たぶん + も = も同じタイプの演算子だと思ってるんだろ。多分
0456名前は開発中のものです。2010/09/20(月) 22:44:10ID:0PP3VNsK
つまり、

a=4;
b-1;
a=b-a;

これは、

1.bに4を入れる
2.aに1を入れる
3.計算する
4.=の左のaに答えを入れる

は間違い。


1.と2.の順番が違う。


1.aに1を入れる
2.bに4を入れる
3.計算する
4.=の左のaに答えを入れる

が、正解。
0457名前は開発中のものです。2010/09/20(月) 22:44:40ID:sEiPhw38
>>451
だから、根本的に「右から処理する」って考えが間違ってるんだよ。
すべての演算子は基本的には左から処理をしていくんだよ。
その中で優先順位が決まってるってだけ。

>>413も書いてるけど=の優先順位が低いから逆にやってるように錯覚してるだけなんだよ。
これが物事の順番なんだよ。
0458名前は開発中のものです。2010/09/20(月) 22:45:29ID:JDqAfrLM
因みに演算順の問題は
>>447とは別だからな
たとえ後ろから前だとしても(違うけど)
>>447>>439の理由にはならないからな
0459名前は開発中のものです。2010/09/20(月) 22:48:50ID:0PP3VNsK
訂正

a=4;
b=1;

a=b-a;
←←←

1.aに1を入れる
2.bに4を入れる
3.計算する
4.=の左のaに答えを入れる
0460名前は開発中のものです。2010/09/20(月) 22:50:18ID:TSB9RtrO
>>449

= の左側 a と右側 a + b のどっちを先に評価するかは処理系依存
ただし = の左側と右側では評価の仕方が違う。

>>451

コマ送りで考えるのが悪いとは言わん。ただ考えが間違ってるだけで。

= 演算子は

 (1) 左辺と右辺をそれぞれ評価 (順番は決まってない)
 (2) 左辺に右辺を代入

(2) の働きを「後ろから前に」とどうしても表現したいなら別に構わん。ただそれは代入演算子に
ついての話であって、それを「C言語では式は後ろから前に計算される」と一般化してはいけない

>>452
前から後ろに計算されることが(おそらく)多いだろうけど、それは決まってはいない。
0461名前は開発中のものです。2010/09/20(月) 22:50:25ID:ioukBWfm
もうだめだこいつwwwwwwwwwww
0462名前は開発中のものです。2010/09/20(月) 22:50:30ID:FBgjHnqX
>>456
なんで
a=4なのに説明では1になってるの?
とか
b-1じゃなくてb=1だろ
とかは置いとくとして
下が正解だ
0463名前は開発中のものです。2010/09/20(月) 22:50:56ID:TrTl0m0a
1 : a=4;
2 : b=1;
3 : a=b-a;

1.aに4を入れる
2.bに1を入れる
3.b-aつまり1-4を計算
4.=の左のaに答え(-3)を入れる
0464名前は開発中のものです。2010/09/20(月) 22:51:47ID:TSB9RtrO
>>459
もうめちゃくちゃだな

「aに1を入れる」とかどっから出てきたんだ
0465名前は開発中のものです。2010/09/20(月) 22:52:34ID:KOYHA8wF
a=a+1
このインクリメントがわかりづらかったら。
c←a+1
a←c
このように考えてください。
CPU内のアキュムレータに一時保管するように、

インクリメントは多用するから、使えないとコードが書けませんよ
0466名前は開発中のものです。2010/09/20(月) 22:53:06ID:0PP3VNsK
失礼・・。

さらに訂正


【正解】

a=4;
b=1;

a=b-a;
←←←

1.aに4を入れる
2.bに1を入れる
3.計算する
4.=の左のaに答えを入れる


【間違い】
a=4;
b=1;

a=b-a;
←→→

1.bに1を入れる
2.aに4を入れる
3.計算する
4.=の左のaに答えを入れる

この考え方は間違い。
0467名前は開発中のものです。2010/09/20(月) 22:55:08ID:JDqAfrLM
>>460
あれ同レベルの演算子の処理順って処理系依存だったのか
じゃあそこは間違ってたごめん
0468名前は開発中のものです。2010/09/20(月) 22:55:17ID:ioukBWfm
もう何言ってんのかわかんねww
0469名前は開発中のものです。2010/09/20(月) 22:55:54ID:WrM+PpRx
a=1-4;
右からやったら答えは3でしょ?
左からやったら答えは-3でしょ?
0470名前は開発中のものです。2010/09/20(月) 22:56:09ID:0PP3VNsK
すごく細かい話だけど。

これがすごく重要ことなのよ。


これを理解するのに、かなり悩みました。
0471名前は開発中のものです。2010/09/20(月) 22:57:17ID:TrTl0m0a
>>470
理解出来てないから、もう少し悩む必要があるね。
0472名前は開発中のものです。2010/09/20(月) 22:57:22ID:0PP3VNsK
>>469
1-4は、-3は当たり前じゃないか。

そういうことを言ってるんじゃなくて。
0473名前は開発中のものです。2010/09/20(月) 22:59:35ID:WrM+PpRx
>>472
何が言いたいんだ?
右からやったら4-1になっちゃうじゃないか
0474名前は開発中のものです。2010/09/20(月) 23:00:27ID:UJfhMPaM
ソース:
#include <stdio.h>

class Baka
{
int baka[10] ;
public:
int & operator + ( int i )
{ return baka[i] ; }
} ;
int main(void)
{
Baka baka ;
baka + 1 = 2 ;
printf( "%d\n", baka + 1 ) ;
return 0 ;
}

出力:
2

やってみそ
0475名前は開発中のものです。2010/09/20(月) 23:00:39ID:TrTl0m0a
1-4
→→
1-4
←←
0476名前は開発中のものです。2010/09/20(月) 23:02:21ID:TSB9RtrO
> 1 : a=4;
> 2 : b=1;
> 3 : a=b-a;

1. a に 4を代入
2. b に 1を代入

3-1 = の左辺 a と 右辺 b - a をそれぞれ評価
 3-1-(1) 左辺の a を左辺値として評価→ 変数 a のアドレスを取得
 3-2-(2) 右辺の b - a を右辺値として評価
  3-2-(2-1) - の左辺 b を評価 → 1
  3-2-(2-2) - の左辺 a を評価 → 4
  3-2-(2-3) b - a、つまり 1 - 4 を計算 → -3
3-2 3-1で求めた左辺値に右辺の値 -3 を代入 (変数aのアドレスのメモリに -3 を格納)

*3-1-(1) と 3-1-(2) のどっちが先jに実行されるかは決まってない
*3-2-(2-1) と 3-2-(2-2) のどっちが先jに実行されるかも決まってない

もちろん 1, 2 でも 3 と同じように細かい過程があるけど省略

あと 3-1-(1) はこの場合は a のアドレスが出力されるコードに組み込まれるだけで、左辺値
を評価するようなコードが出力されることはないはず
0477名前は開発中のものです。2010/09/20(月) 23:02:33ID:C+7XYHpH
実際にどう処理してるかなんて、とりあえずコード書いてみてインラインアセンブル表示してみりゃ一目瞭然なんじゃないか?
一応>>1の前提環境はVisualStudioで、86系のWindowsなんでしょ?

アセンブラの命令セットの意味がわからないなら、ちゃんと資料もあるよ
ttp://www.intel.co.jp/jp/download/index.htm
0478名前は開発中のものです。2010/09/20(月) 23:03:39ID:KOYHA8wF
逆ポーランドで計算しますからね、内部的には色々あります。
0479名前は開発中のものです。2010/09/20(月) 23:04:51ID:HKF349Sq
>>379
亀だけど、初代HSPは優先順位無視するwww
0480名前は開発中のものです。2010/09/20(月) 23:06:07ID:TSB9RtrO
>>467

そうじゃなくて

a = x - y - z;

って式があったときに、- は左結合だから

 a = (x - y) - z;

になる。だから二つの - 演算子で左側が先に計算されるのは処理系に依存しない。
だけど、この式の中の x, y, z の評価の順序は決まってない。
0481名前は開発中のものです。2010/09/20(月) 23:06:52ID:KOYHA8wF
Kazuki == 初代HSP

こうゆうことですね
0482名前は開発中のものです。2010/09/20(月) 23:08:58ID:TrTl0m0a
知り合いのHSP使いは変な勘違いばかりしてる
0483名前は開発中のものです。2010/09/20(月) 23:10:59ID:JDqAfrLM
>>480
あ、結合ってそういう事か(恥さらし)
てことはそこは演算子の結合規則に従うって事でok?
0484名前は開発中のものです。2010/09/20(月) 23:11:06ID:0PP3VNsK
+、-、*、/
などの演算子は、前から後ろに向かって計算します。

これが演算子の優先順位、
左から右へ

でも、全体の計算は、右から左に考える。

つまり、

=という演算子は、
+、-、*、/などの演算子みたいに
右から左に考えるのではなく、
左から右へ考える。

一つ一つの演算子には、
計算する優先順位があるのです。
0485名前は開発中のものです。2010/09/20(月) 23:12:30ID:0PP3VNsK
訂正、

=という演算子は、
右から左へ

+、-、*、/という演算子は、
左から右へ


失礼しました。
0486名前は開発中のものです。2010/09/20(月) 23:13:27ID:TSB9RtrO
>>466
#include <stdio.h>

int foo(int a)
{
printf("%d\n", a);
return a;
}

int main()
{
int a, b;

a = 4;
b = 1;

a = foo(b) - foo(a);
printf("%d\n", a);

return 0;
}

これ実行してみ
処理系によって違う答えが出る可能性があるが、x86 で VC なら

1
4
-3

になるぞ。
0487名前は開発中のものです。2010/09/20(月) 23:14:29ID:WrM+PpRx
>>484
>でも、全体の計算は、右から左に考える。
そうなってるところってある?
0488名前は開発中のものです。2010/09/20(月) 23:15:08ID:yBk4qTKX
>>466
え、っと

int a = 4; // 変数aを宣言し初期値に4を代入
int b = 1; // 変数bを宣言し初期値に1を代入
a = b - a; // 変数aに式「b - a」つまり「1 - 4」の計算結果を代入

ですよ! 宣言や初期値の順番とか関係ないない
「式」に重点を置いて!

とかいて>>484で(´・ω・`)
0489名前は開発中のものです。2010/09/20(月) 23:15:39ID:ioukBWfm
あるのです。 ってさも自分の知識のようにひけらかすあたり人に嫌われる方法を心得ているな
0490名前は開発中のものです。2010/09/20(月) 23:18:19ID:Fl4ksIh5
1スレ半使って3DRPG制作は一歩も進んでないのか
0491名前は開発中のものです。2010/09/20(月) 23:19:13ID:JDqAfrLM
うー
なんかがっつり恥さらししてて恥ずかしい
>>264が間違ってるってのは分かるけど
自分も理解まつがってた…
0492名前は開発中のものです。2010/09/20(月) 23:21:01ID:C+7XYHpH
>>486
脱線するが、このコードで違う答えが出る処理系って何かあ心当たりある?

さすがにこの程度の処理はCの規格で保証できるでしょ。
この処理結果を保証できないのであれば、それはコンパイラのバグかと。
printfの出力先のttyが特殊だったりすれば見た目上の表示は変わるかもしれないけど。
0493名前は開発中のものです。2010/09/20(月) 23:22:20ID:0PP3VNsK
もっと細かく考えてみようよ。


int a = 4

これは初期化ですね?

コンピュータがこれを理解する時は、

「4は、変数aのint型に入れる」

という風に後ろから前に向かって読んで理解しているのです。


これはどんなに長いコードでも一緒だと思うよ。

でも、演算子には優先順位があるから、
順番が変わってくる。
0494名前は開発中のものです。2010/09/20(月) 23:22:44ID:TrTl0m0a
gcc-4.3.4
http://ideone.com/MaHBA
0495名前は開発中のものです。2010/09/20(月) 23:24:03ID:uOYqy3lC
>>493
×4は、変数aのint型に入れる
○4を、int型の変数aに入れる
0496名前は開発中のものです。2010/09/20(月) 23:24:27ID:0PP3VNsK
C言語がこういう文法になっているのは、
英語圏のアメリカで誕生したからだと思う。

ほら。

英語の場合、先にメインを言ってから
文法を書くでしょ?
0497名前は開発中のものです。2010/09/20(月) 23:25:19ID:p01Q1cpS
なんで脳内妄想をここまで頑なに信じられるんだろう
0498名前は開発中のものです。2010/09/20(月) 23:26:09ID:TrTl0m0a
I think that Kazuki is very foolish.
0499名前は開発中のものです。2010/09/20(月) 23:26:25ID:JDqAfrLM
あ、そっか
代入演算子の演算順考えれば単純に左から右じゃないって分かるじゃねぇか…>俺
おうふ
0500名前は開発中のものです。2010/09/20(月) 23:26:33ID:HKF349Sq
>>493
1.intを宣言します
2.宣言した変数はaです
3.変数aに代入します
4.代入する値は4です
0501名前は開発中のものです。2010/09/20(月) 23:26:44ID:0PP3VNsK
I love you


これは、「私は好きだあなた」という意味


日本語なら、

You Love I

になってないとおかしい。
0502名前は開発中のものです。2010/09/20(月) 23:28:10ID:0PP3VNsK
間違った・・w

日本語で考えると

I You love

ですね?

「私はあなたが好き」
0503名前は開発中のものです。2010/09/20(月) 23:28:34ID:TrTl0m0a
中学生かよ
0504名前は開発中のものです。2010/09/20(月) 23:29:02ID:hLC3NOpE
>>493

>でも、演算子には優先順位があるから、
>順番が変わってくる。
んで、その優先順位を変えたいときは()を用いることね。
0505名前は開発中のものです。2010/09/20(月) 23:30:20ID:TSB9RtrO
> 「4は、変数aのint型に入れる」

「変数 a のint型」とかいうトンチキな言葉を使わないと「後ろから前」説を維持できないのか

 int型の変数 a に 4 を代入する

で問題ないだろ
0506名前は開発中のものです。2010/09/20(月) 23:30:21ID:0PP3VNsK
I love you

これを日本語の文法でそのまま訳すと

「私 好き あなた」


でも、本来の意味は、

「私は あなたが 好き」

になる。


C言語もこれと同じ。
0507名前は開発中のものです。2010/09/20(月) 23:32:18ID:TrTl0m0a
お前わざと理解出来ないフリしてんだろ
0508名前は開発中のものです。2010/09/20(月) 23:33:28ID:HKF349Sq
>>506
そのC言語の文法を間違って覚えてるのがkazuki
0509名前は開発中のものです。2010/09/20(月) 23:33:43ID:yBk4qTKX
もーなんていうか、こんなに一生懸命教えて下さってる方が大勢いらっしゃって…

なんか、ほんとありがとう!
0510名前は開発中のものです。2010/09/20(月) 23:34:00ID:0PP3VNsK
よって

int a = 4


この場合、一番メインの「int」を主語にもってきて、
最初に書く。

続いて二番目に重要な、「変数a」を書く。

三番目に、「演算子=」を書く。
これは目的語って読んだ方がいいか。

そして、四番目に、本当はメインのはずの
中に入れる「値4」を書く。


英語の文法にそっくりじゃないか。
0511名前は開発中のものです。2010/09/20(月) 23:34:14ID:vydKhpMD
自然言語の文法なんて超不定だっていう
0512名前は開発中のものです。2010/09/20(月) 23:35:16ID:TSB9RtrO
>>510
正気じゃない
0513名前は開発中のものです。2010/09/20(月) 23:35:59ID:CgR15p8+
ねぇみんな中学校の数学で

y=x^2+2x+1

って習ったよねって一言言うといろいろと捗るってじっちゃが
0514名前は開発中のものです。2010/09/20(月) 23:36:21ID:vydKhpMD
int a=4;

変数宣言の
int a;
と代入の
a=4;
をつなげたようなもので
順序にたいした意味はないだろ
0515名前は開発中のものです。2010/09/20(月) 23:36:44ID:GYlRLzyH
>492
横からだが、規格では決まってないと思う(少なくとも古い規格では無し)
値の評価順序(ここで言う関数の評価順序)は決まっていなかったはず
だから1,2番目が入れ替わる可能性があるのではないかと
ただしいくつかの演算子については規格で決まっている
0516名前は開発中のものです。2010/09/20(月) 23:38:19ID:CgR15p8+
評価順序みたいなリアルタイムなことは
asmで気にすればいいじゃな井
0517名前は開発中のものです。2010/09/20(月) 23:39:23ID:0PP3VNsK
俺、実は中学生の頃に、
親父の書斎に忍び込んで
パソコンを勝手に触って
COBOL(コボル)のプログラムを組んだことがあります。

もちろん遊びでね?

その時、
プログラムって英語なんだな、と思いました。
0518名前は開発中のものです。2010/09/20(月) 23:39:31ID:/bWtWk34
たかが代入式でこんだけスレ消費しちゃうなんて、
マヌケ過ぎるwww
0519名前は開発中のものです。2010/09/20(月) 23:39:46ID:CgR15p8+
yをy=x^2+2x+1とする
x=2のときのyを求めよ

なんかプログラムみたい......
0520名前は開発中のものです。2010/09/20(月) 23:41:11ID:HKF349Sq
どーしても後ろから前というなら、こういうのは?

int a = 0;
int a += a++ + ++a;
0521名前は開発中のものです。2010/09/20(月) 23:41:19ID:vydKhpMD
そもそもの発端である
a=b;を
a=a+B;と書いたことの説明はまだ無しっと
0522名前は開発中のものです。2010/09/20(月) 23:41:50ID:HKF349Sq
間違った

int a = 0;
a += a++ + ++a;
0523名前は開発中のものです。2010/09/20(月) 23:42:04ID:TrTl0m0a
>>521
右から左とか関係ないじゃん
0524名前は開発中のものです。2010/09/20(月) 23:42:33ID:CgR15p8+
ねぇ数学で「a=b+cとする」って言ったとき
これも右から計算しなくちゃいけないのかな......
0525名前は開発中のものです。2010/09/20(月) 23:43:37ID:hLC3NOpE
>>521

a = a + b;だとa = b;じゃなくてa += b;と同じだよね。
0526名前は開発中のものです。2010/09/20(月) 23:44:44ID:vydKhpMD
>>523
関係ないのにこの説明で>>1が後ろから前と言い出してこんなことになってる
0527名前は開発中のものです。2010/09/20(月) 23:45:23ID:GYlRLzyH
>522
そいつは未定義では...
0528名前は開発中のものです。2010/09/20(月) 23:47:39ID:vydKhpMD
みつけた
>>264
0529名前は開発中のものです。2010/09/20(月) 23:49:20ID:WrM+PpRx
後はkazukiが認める認めない云々の話で結論は出てるのであんまり興味はないな
本人だってどうせわかってるだろうし

それよか脱線してないで3DRPG作れよ
0530名前は開発中のものです。2010/09/20(月) 23:49:44ID:TrTl0m0a
「後ろから前」自体は前スレからほざいてたと思う
0531名前は開発中のものです。2010/09/20(月) 23:50:27ID:HKF349Sq
>>527
たとえ未定義でも大丈夫
ちなみに>>1に動作を細かく説明してもらいたい
動かないならその理由も
0532名前は開発中のものです。2010/09/20(月) 23:50:46ID:KOYHA8wF
COBOLで3D-RPG 作りなさいよ、 できるんでしょ
0533名前は開発中のものです。2010/09/20(月) 23:51:26ID:/bWtWk34
そもそも後ろから前って表現がおかしいんだろ。畑中葉子じゃあるまいし。
せめて、右辺から左辺って言えよ。

で、もう、C言語じゃなくて、Kazuki言語を作っちゃえよ。
代入演算子は、「<==」な。

a <== b + 10;
これなら、Kazukiも理解できるんだろ?
Kazuki言語は代入の別の書き方として、
b + 10 ==> a;
もあり。


つか、普通の人は、そんなこと別に拘ったり躓いたりしないっつうの。
0534名前は開発中のものです。2010/09/20(月) 23:53:11ID:0PP3VNsK
アニメーションでコマ送りで解説した方が解りやすいかな?


a=4;
b=1;

a=b-a;


1.式の右側のaが光ながら4に変わった!
2.式のbが光ながら1に変わった!
3.お!式全体が光って-3になったぞ!
4.式の左のaが光って-3に変わった!!

こんなアニメーションを想像してみてよ。

そしたら、俺が言ってることが解っていただけると思う。


てか、もういいよ。
この話題は・・。

いい加減、疲れてきた。(^^;
0535名前は開発中のものです。2010/09/20(月) 23:53:47ID:vydKhpMD
>>530
ほんとだ前スレでも言われてた
解説の
http://www.kazuki-sendo.com/game/?p=386
が初出っぽい
0536名前は開発中のものです。2010/09/20(月) 23:54:38ID:WrM+PpRx
>>534
お前1人でおかしんじゃん
0537名前は開発中のものです。2010/09/20(月) 23:55:12ID:TrTl0m0a
アホ過ぎてレス付けたくない
0538名前は開発中のものです。2010/09/20(月) 23:55:25ID:CgR15p8+
主の脳はきっとrofs
いつもremount, rwを待っている
でもその日は来ない、常にpermission denied
0539名前は開発中のものです。2010/09/20(月) 23:56:41ID:C+7XYHpH
>>515
なるほど。確かにおっしゃる通り。

規格で決まってる演算子の代表は||や&&あたりかな。
if(a != NULL || (*a)())
みたいなコード書くのに不定だと困るし。
0540名前は開発中のものです。2010/09/20(月) 23:57:34ID:mzMKx9Ul
Kazukiのお気に入り
ttp://yokohama-bj-lover.up.seesaa.net/image/hatanaka.jpeg
0541名前は開発中のものです。2010/09/20(月) 23:58:29ID:TrTl0m0a
閲覧注意

つーかびびった
0542名前は開発中のものです。2010/09/20(月) 23:58:34ID:0PP3VNsK
>>532
悪い・・コボルは、ほとんど忘れた・・。

スペル忘れたけど、
コボルでは、4つのディビジョンを使う。


アイデンティフィケーション・ディビジョン
データ・ディビジョン
プログラム・ディビジョン

あと、一個なんだっかな?


コボルでは、データを入れる器を先に全部定義しておき、
そっから、プログラム・ディジョンで引っ張ってきて使う。

ごめん・・10年以上も昔のことなので、
ほとんど、忘れた・・。
0543名前は開発中のものです。2010/09/20(月) 23:58:54ID:ioukBWfm
>>534
理解できてないくせになにがもういいよだよ



でもまぁ実際kazuki以外のレスは勉強になるから有益なスレかもしれん
評価順が処理系依存とは知らなんだ
0544名前は開発中のものです。2010/09/20(月) 23:59:54ID:TrTl0m0a
>>542
検索乙
0545名前は開発中のものです。2010/09/21(火) 00:00:38ID:TSB9RtrO
>>534
だから、それなら>>486

a = foo(b) - foo(a);

1.式の右側のfoo(a)が光ながら4に変わった! (foo(a) が評価されて値4を取得)
2.式のfoo(b)が光ながら1に変わった!    (foo(b) が評価されて値1を取得)
(以下略)

で、プログラムの出力は

 4 : foo(a) の出力
 1 : foo(b) の出力
-3

になるはずだよね。でもそうはならないんだけど (VC では)。
0546名前は開発中のものです。2010/09/21(火) 00:01:24ID:CgR15p8+
評価順が固定だと最適化の余地がないと言うか
とる?ぁるどずさんみたいな人以外はC/C++には高級言語であってほしいわけで
0547名前は開発中のものです。2010/09/21(火) 00:03:32ID:8ikuqbpo
お、光ながらIDが変わった!
0548名前は開発中のものです。2010/09/21(火) 00:04:32ID:K3ExNE1u
俺が中学の頃、
親父はコンピュータ専門学校の講師をしていて、
専門学校のテストとか勝手に盗んで、それを解いたりして遊んでいたな(^^

書斎の本棚のプログラムの本とか、
勝手に読んだりして、
ある日、親父のパソコンを勝手に触って、
動かなくなって、おれ、涙目・・・ww


どうせばれないだろう。と思って、
電源切って黙っていたら、
なぜかバレてこっぴどく叱られたなw(^^;


あの頃は、Windows3.1が登場するよりも
ずっと前の時代です。

データもペラペラのフロッピーディスクを使っていて、
Aドライブとか、Bドライブとかあった。

きっと今の人は、想像も付かないんだろうな(^^
0549名前は開発中のものです。2010/09/21(火) 00:05:12ID:kgfEdF2W
>>548
本日のKazuki:ID:K3ExNE1u
0550名前は開発中のものです。2010/09/21(火) 00:08:19ID:osQ4NIxS
ガチで30代なんだなぁ
0551名前は開発中のものです。2010/09/21(火) 00:08:57ID:kgfEdF2W
>>548
>あの頃は、Windows3.1が登場するよりも
>ずっと前の時代です。

Windows3.1の発売日
日本語版
NEC版1993年5月12日
Microsoft版1993年5月18日

オッサン乙
30代にもなってこんな事してるのか
0552名前は開発中のものです。2010/09/21(火) 00:09:12ID:EFC5zGpt
3.1のころのWindows、というかx86のUIは腐ってたなぁ
Macintoshは今でも通用するGUIで動いてたし、UnixじゃEmacsとかshは今でも現役なのに
DOSのドライブレターの評価と言ったら
0553名前は開発中のものです。2010/09/21(火) 00:09:18ID:K3ExNE1u
俺が中学生の頃に初めてコンピュータを勉強してみた時は、

主記憶装置とか補助記憶装置とか演算装置?とか
色々あって、あの頃はよく覚えていたんだけど、

いつの間に、そういう言葉を使わなくなったのだろうか・・。

ああ。でもフローチャートぐらいは、
今でもバッチリ覚えているから、
あとでフローチャートの解説をする予定です。

もちろん、ちゃんと調べてからです。


じゃあ、もう寝よう!!
0554名前は開発中のものです。2010/09/21(火) 00:09:19ID:8ikuqbpo
>>548
>学校のテストとか勝手に盗んで
あのさあ・・・光ながら言わせてもらうけどさ、それやっちゃイカンだろ。
0555名前は開発中のものです。2010/09/21(火) 00:10:10ID:aqn5gOVm
>>534
int b=1;
int a=4;
a=b-a;
これだとどういう順番になる?

計算処理の順云々いうより>>534の言い方だと
プリプロセッサでaが4になってbが1になってみたいな解釈してるんじゃね?こいつ。
そういう見方をするとトンチキな解釈の仕方もなんか見えてくるような気がしてきた。

変数はメモリに云々いいながらこんな解釈だとすると絶望的なんだけどねw
0556名前は開発中のものです。2010/09/21(火) 00:10:19ID:SVPWmLm/
全レスにおいてkazukiであることにスキがねぇw
0557名前は開発中のものです。2010/09/21(火) 00:10:33ID:ckV5qZOe
>>548
親父から教えてもらえよw
0558名前は開発中のものです。2010/09/21(火) 00:11:28ID:kgfEdF2W
>>553
フローチャートとかBASICの入門書でしか見たこと無い…
マの人は毎日見るのか
0559名前は開発中のものです。2010/09/21(火) 00:12:16ID:aqn5gOVm
>>548
俺は1行表示の液晶が付いたポケコンが最初だったよ。
データ保存はテープレコーダーな。
0560名前は開発中のものです。2010/09/21(火) 00:12:22ID:nG5eaoRn
C++でゲーム作るにあたってフローチャートじゃいろいろキツイだろ
UMLとかじゃね使ったこと無いけど
0561名前は開発中のものです。2010/09/21(火) 00:13:01ID:oc5ovhOy
その時代からプログラミングしてて、なんで今こんなことになってるんだ?
ちょっと凝ったことやろうとして実用的なパフォーマンス出そうとしたら、BASIC卒業してCなりASMなり使う必要があった時代だろ。

0562名前は開発中のものです。2010/09/21(火) 00:13:08ID:70l/LL7m
テスト問題もパクってたのかw
0563名前は開発中のものです。2010/09/21(火) 00:13:52ID:EFC5zGpt
>>558
組み込みとか逆にWeb系なら見るんじゃねーかなぁ
statefulで各状態が小さくないといけないよねたぶん
0564名前は開発中のものです。2010/09/21(火) 00:15:33ID:kgfEdF2W
>>559
( ´∀`)人(´∀` )ナカーマ
俺もだwww プリンタの用紙しかもう持ってないが…
今はグラフィック機能とかCコンパイラ付いてるやつ使ってる。
0565名前は開発中のものです。2010/09/21(火) 00:17:38ID:daDMTr3g
フローチャート位理解してねえとC++はまず理解できねえだろ
0566名前は開発中のものです。2010/09/21(火) 00:18:16ID:EFC5zGpt
最初のマイマシンが686な俺ゆとり10代
でもm68kの話もできるお
0567名前は開発中のものです。2010/09/21(火) 00:21:04ID:aqn5gOVm
>>564
今はポケコンは使わなくなっちゃったな。
押入れ探せば多分まだあるよ、SHARPのPC-1500。
小学校の頃ポケコンのBASICでプログラムの基本を覚えて
中学高校でBASICの限界を感じてasm混ぜるようになったな。
0568名前は開発中のものです。2010/09/21(火) 00:22:17ID:EFC5zGpt
>>565
ループぶんまわして分岐して戻ってくるだけがプログラムじゃねーんだ
もう

for(x<100){x=x++;};
0569名前は開発中のものです。2010/09/21(火) 00:23:27ID:ckV5qZOe
漏れのG-805はまだまだ現役ですw
0570名前は開発中のものです。2010/09/21(火) 00:23:35ID:oc5ovhOy
>>568
初期化w
0571名前は開発中のものです。2010/09/21(火) 00:25:04ID:kgfEdF2W
>>567
俺はSHARPのPC-1245だ。壊しちまったけどな…
今手元にあるのはPC-G850V。

http://fx.104ban.com/up/src/up4321.jpg
押入れから出てきたBASICの本(ポケットBASIC入門)。
フローチャートってこれだよね
0572名前は開発中のものです。2010/09/21(火) 00:29:40ID:K3ExNE1u
>>559
ああ、俺も良く知ってるよ。


ピーゴロゴロゴロー!ってなる奴でしょ?(^^


俺、一応、汎用機のオペレーターしてましたよ。
JCLも組めるぞ!すごいだろ!

JCLなんて聞いたこともないんだろうな(^^


一応、WEBサーバーのオペレーターも経験しています。
Windowsサーバーと、UNIXサーバーの管理者をやっていました。
0573名前は開発中のものです。2010/09/21(火) 00:30:51ID:EFC5zGpt
>>570
# include "pic18f2550.h"
int x=0;
main{
0574名前は開発中のものです。2010/09/21(火) 00:31:27ID:8ikuqbpo
>>572
>ピーゴロゴロゴロー!ってなる奴でしょ?(^^
便所行ってこい
0575名前は開発中のものです。2010/09/21(火) 00:32:10ID:EFC5zGpt
Unixが扱える人間には見えねぇなぁ
汎用機は知らんけど
0576名前は開発中のものです。2010/09/21(火) 00:34:41ID:K3ExNE1u
>>571
いや。
それは・・フローチャートじゃない。

もっと色んなのがあります。

ひし形とか、ドラムっぽいのとか、
ループの解説をする時に、
フローチャートを使わないとうまく解説できません。
0577名前は開発中のものです。2010/09/21(火) 00:35:25ID:/Xx7+FDM
なんか今日はめっちゃ流れが早いじゃん
どうしたの
0578名前は開発中のものです。2010/09/21(火) 00:36:32ID:EFC5zGpt
主が発狂してるし休日だから
あと数学的概念をまたひとつ間違えたから
0579名前は開発中のものです。2010/09/21(火) 00:37:22ID:K3ExNE1u
只今の勢いは、なんと!!

316.4です。


では、寝ます。
0580名前は開発中のものです。2010/09/21(火) 00:40:34ID:nG5eaoRn
俺の目には>>571はフローチャートにしか見えないが
なんか別のものなのか?
0581名前は開発中のものです。2010/09/21(火) 00:40:39ID:EFC5zGpt
おい賢者ども
落ちます宣言してから一定数の乙聞くまで落ちられない現象の名前教えろ
0582名前は開発中のものです。2010/09/21(火) 00:41:33ID:BKMCcH4a
>>517
COBOLやってたなら、代入くらいわかると思うんだけどね
それと忘れたっていってもCOBOLの代入演算子くらい知ってるよな
知らないっていうならまた大ボラか
0583名前は開発中のものです。2010/09/21(火) 00:45:22ID:yJ0j2Nkl
>>580
JIS規格以外はフローチャートと認めませんキリッ って事じゃないの?
0584名前は開発中のものです。2010/09/21(火) 00:45:27ID:aqn5gOVm
>>572
こいつ、意地でも自分を優位に見せたいんだな。
こんな意味不明なやつに管理されてたメインフレームに同情するよ。本当ならw

>>576
いや、これだってフローチャートだろ。
0585名前は開発中のものです。2010/09/21(火) 00:48:43ID:EFC5zGpt
>>584
世の中にはSpace - Enterのコンボで固まる汎用機もあるらしいけどな
0586名前は開発中のものです。2010/09/21(火) 01:02:36ID:QcJ9YM7j
調べるのめんどくさいのでここで聞きます
int型ってのがあるらしいのはここ見ててよく分かったんですが
他にもbyte、char、short、float、double、ってこんな感じで
あるはずなんですがこれって何が違うんでしょうか
0587名前は開発中のものです。2010/09/21(火) 01:03:35ID:yJ0j2Nkl
何が気に食わないって自分以外の他人を自分より分かってないと思いこみ
見下してる感が気に食わない…!
0588名前は開発中のものです。2010/09/21(火) 01:04:12ID:kgfEdF2W
>>586
中に入れられるデータの種類。
0589名前は開発中のものです。2010/09/21(火) 01:10:29ID:EFC5zGpt
>>pentium
byteだったりキャラクタだったりfloating-pointだったりdouble-prescision floating pointだったり
0590名前は開発中のものです。2010/09/21(火) 01:12:45ID:yJ0j2Nkl
byteは知らないけど、右から文字型、短い整数型、単精度浮動小数点型、倍精度浮動小数点型
具体的には調べた方がいいよ!
0591名前は開発中のものです。2010/09/21(火) 01:18:40ID:Yn+iM1ib
だまされんな!
左からだぞ!
0592名前は開発中のものです。2010/09/21(火) 01:19:25ID:yJ0j2Nkl
右からなら逆じゃないかorz

char 文字型
short 短い整数型
float 単精度浮動小数点型
double 倍精度浮動小数点型
0593名前は開発中のものです。2010/09/21(火) 01:20:44ID:EFC5zGpt
#include "mymathconstants.h"
int a=0;
main() {a=pi; return 0;}
0594名前は開発中のものです。2010/09/21(火) 01:22:39ID:yJ0j2Nkl
他にも C++の場合なら
long (int)、long doubleっていうのもあるけれど
調べて実際に使ってみた方が絶対身によくつく
0595名前は開発中のものです。2010/09/21(火) 01:40:04ID:QcJ9YM7j
回答ありがとうございます、やっぱC系の知識だったんですねこれ。
ガベージコレクション対策用途でメモリをなんちゃらかんちゃらするという拡張DLLがあって、
そこにいきなりCharがどうしたlongがどうしたと書いてあったので試しにここで聞いてみました。
あとは色々調べて実践してみます。
0596名前は開発中のものです。2010/09/21(火) 02:05:14ID:EFC5zGpt
数に型があるのはCだけじゃないよ
実数とか言うじゃん
0597名前は開発中のものです。2010/09/21(火) 04:01:05ID:kgfEdF2W
解説まだかな
0598名前は開発中のものです。2010/09/21(火) 06:19:28ID:LFEJNZC+
kazuki30代とか救い様がねーじゃん
一応日本語が通じる分
闇のプログラマーの方がまだましじゃないのか
0599名前は開発中のものです。2010/09/21(火) 08:41:36ID:EFC5zGpt
闇のプログラマーはもっと高貴なお方だから
0600名前は開発中のものです。2010/09/21(火) 11:02:15ID:iEvx/XoY
演算子だけでこの面白発言の数々…w
ポインタやクラスになるとどんな迷言が飛び出すかワクワクするぜ
0601名前は開発中のものです。2010/09/21(火) 11:23:00ID:EFC5zGpt
右から左に評価します(キリッ
0602名前は開発中のものです。2010/09/21(火) 12:06:19ID:EFC5zGpt
そういえば「Unixも扱える」んだっけ
find --helpの結果ってどうなる?

1) 無視される
2) -- illegal options - --help
3) GNU find 2.54 で始まるヘルプテキスト
0603名前は開発中のものです。2010/09/21(火) 16:08:49ID:K3ExNE1u
よし。じゃあ、今回の解説はこれでいこう。(^^

これで「後ろから前に向かって」がうまく説明できると思う。

今から、解説用画像を作成します。
数時間後にはアップされてるかもね(^^

おたのしみに。
0604名前は開発中のものです。2010/09/21(火) 16:12:29ID:kgfEdF2W
>>603
楽しみです(^p^)
0605名前は開発中のものです。2010/09/21(火) 16:14:59ID:K3ExNE1u
>>602
いや、俺はUNIXサーバーの管理者(オペレーター)をしてただけだから
UNIXのプログラムは知らないよ。

オペレーターとプログラマーは全然違う。

じゃあ、皆さんにオペレーターとは、
実際に、どんな仕事をしているのかを説明しよう。


オペレーターというのは、
汎用機(大型コンピュータ)やサーバーの管理者です。

では、実際はどんな仕事をしているのかと言うと、
マシンルーム、サーバールームに入ってランプをチェックするだけです。(^^

一覧になった表があって、
そこにチェックする項目がある。

あるサーバーのラックの前まで行ったら、
鍵でラックを開ける。
そして、上から順番にランプの色をチェックする。

緑ならOK、オレンジならNG。

各ランプの横には@こんなテプラが貼ってあって、
それを一つずつチェックしていく。
0606名前は開発中のものです。2010/09/21(火) 16:20:30ID:K3ExNE1u
一つのラックにチェックする項目は、
20個以上もあって、
そんなラックがたくさんあるので、
全部チェックするのは大変。

全部のサーバーのランプをチェックするには、
20分ぐらいはかかる。

たくさんの鍵をジャラジャラしながら、
サーバールームを歩き回ってるわけですね。

チェックの他に、月、水、金など
決められた曜日の指定された時間にデータをテープに保存するような仕事もあります。

そういった、一連の作業を、
一日に、5回ぐらいやります。

これが、オペレーターの仕事です。
やり方さえ覚えれば中学生でも出来る。

チェックする以外の時間は、自由時間です。

好きなようにインターネットをするもよし、
本をするもよし、ゲームをするもよし。

俺はそんな時間を利用して、
HTMLなどを勉強してWEBデザイナーになったのだよ(^^
0607名前は開発中のものです。2010/09/21(火) 16:25:04ID:K3ExNE1u
こんな簡単な仕事でも月給は結構高い。

28万から30万以上。
だって、大手ですから。(^^

でも、残念ながら
こういう特殊な仕事はハローワークとかでは
求人を募集していないんだな。

そういう仕事だけを扱ってる特殊な機関があって、
そういうところで募集をかけています。

これを知ってるのは業界人だけです。


あ。今言った仕事内容は、実は企業秘密だったりするから、
俺が言ったことは内緒にしておいてね。(^^;

なので、オペレーターはプログラムの知識ゼロでもなれます。
0608名前は開発中のものです。2010/09/21(火) 16:26:28ID:kgfEdF2W
>>605-607
妄想か検索か知らないが長文乙
さっさと解説作れよwww
0609名前は開発中のものです。2010/09/21(火) 16:33:09ID:K3ExNE1u
ああでも、
俺、昔、LindowsOSを使っていたことがあったから、
少しぐらいのコマンドなら知ってるよ。

そんなOS聞いたこともないだろうな・・(^^

では、作業開始!
0610名前は開発中のものです。2010/09/21(火) 16:40:40ID:kgfEdF2W
>そんなOS聞いたこともないだろうな・・(^^
逆に有名じゃね?M$とごたごたあったし
つーかLinspireとか糞だろwww 使った事無いけど
0611名前は開発中のものです。2010/09/21(火) 16:45:30ID:yJ0j2Nkl
今更まとめ見てきたけど、酷いね…
もう触る気になれないや
0612名前は開発中のものです。2010/09/21(火) 16:52:29ID:EFC5zGpt
まさか「見たことがあるだけ」とは思わなかった
阿呆すぎる
0613名前は開発中のものです。2010/09/21(火) 16:57:09ID:kgfEdF2W
>HTMLなどを勉強してWEBデザイナーになったのだよ(^^
Webデザイナー(笑)
なんだよあのセンス0のサイト
テンプレートのまんまじゃないか
0614名前は開発中のものです。2010/09/21(火) 17:06:03ID:kgfEdF2W
カウンター付いたのか。
取り敢えずブロックしといた
0615名前は開発中のものです。2010/09/21(火) 17:07:10ID:EFC5zGpt
カウンタなんて不要なんだけどな、アクセスログ見ればいいだけだから
まぁWordPressのセットアップが関の山っていう…
0616名前は開発中のものです。2010/09/21(火) 17:24:21ID:EFC5zGpt
>>613
>HTMLなど(が存在すること)を勉強<<ナガシヨミ>>してWEBデザイナーになったのだよ(^^
0617名前は開発中のものです。2010/09/21(火) 18:04:58ID:oc5ovhOy
マジレスとなって恐縮だが、
>>605〜607の
> これが、オペレーターの仕事です。
> やり方さえ覚えれば中学生でも出来る。
これだけは見過ごせなかった。

初心者や学生に管理者の仕事が本当にこれだけだと思われては困るので、
本来見回り以外の時間の使い方について、ちょっと思いついただけでも列挙する。
・定時のダンプや異常検出や異常原因の切り分け方法の自動化を行い、
 コストを削減しつつ、障害発生時のダウンタイムを短くし、
 開発部隊への十分なデバッグ情報を提供出来るようにする
・CPUやIO負荷、メモリやディスク使用量のピーク値や統計値を収集し、
 顧客に将来の機材の更新タイミングや契約変更の提案が可能となる資料を作成する
・障害発生原因を分析し、保守部品の適切な在庫管理を行い、
 コスト削減を検討する
・ハードウェアやソフトウェアのバージョンアップに追従し、
 機能の変更や、信頼性の評価、使い方の確認を行い、
 試験系を用意して、自社で扱える分野を増やす

「中学生でも出来る仕事しか自分は出来ません。
難しいところは信用されていないので誰かがこっそり尻拭いしてくれていました。」
って自分で無能をアピールしていることに気づかないかね?

本当に中学生でもできる仕事なら、そもそも28万〜も金払わねぇよ。
それを自分の能力不足とプロ意識の欠如を棚にあげて、中学生でも出来る呼ばわりするとは
甚だ周りが見えていないとしか言いようがないな。

長文すまん。
0618名前は開発中のものです。2010/09/21(火) 18:08:25ID:kgfEdF2W
>>617

まあ、きっと>>1はただのニートだろうな
0619名前は開発中のものです。2010/09/21(火) 18:45:18ID:RmZy25uJ
>>617
ずいぶんレベルの高いオペレータだなぁ
俺が前関わってたシステムのオペレータにはそんな人いなかったわ〜
システム開発部隊が作ったマニュアルに従って作業するのが仕事で
マニュアルに無かったら開発側に連絡が来る

てか、それはオペレータって言うより開発チームのインフラ部隊って感じじゃね?
場所によって呼び方違うだけかもしれんが
たぶん>>1は俺が関わってた人たちの仕事みたいな感じだと思う
0620名前は開発中のものです。2010/09/21(火) 19:11:20ID:EFC5zGpt
求められるのはrogue operatorなんだな
0621名前は開発中のものです。2010/09/21(火) 19:17:39ID:K3ExNE1u
ふう。。

ようやく、全ての画像が完成した。
あとは、これを切り抜いて記事を書くだけです。

多分、これを読めば、全ての誤解が解けると思うよ(^^
0622名前は開発中のものです。2010/09/21(火) 19:22:44ID:K3ExNE1u
>>617
え・・(^^;

いやまあ、そうだけど。
そんなこと書いていいのかい?

ガクブル・・。

社外秘情報だろ・・それ・・。


まあ、実際のオペレーターはもっと色々やるけど、
そんなのたまにしかやらないじゃないか。

汎用機の場合は、TSS端末を叩くし、
JCLでJOBキックさせるし、
サーバーの管理者でも、
よく似たようなことをします。


でも、そういうのはマニュアルがあるんだし、
その通りに打ち込んでいくだけでしょ?

そんなことよりも、
そんな細かいことを書いちゃいけない。

あんたの上司が見たら、
メチャクチャ怒られるぞ(^^;
0623名前は開発中のものです。2010/09/21(火) 19:23:43ID:EFC5zGpt
※このスレに小学生がいるようです
 探してみてね!
0624名前は開発中のものです。2010/09/21(火) 19:25:09ID:kgfEdF2W
>>622
>社外秘情報だろ・・それ・・。
一度、どこでもいいから就職してみようよ
このままだと死ぬまでニートだよ?
0625名前は開発中のものです。2010/09/21(火) 19:28:47ID:K3ExNE1u
俺も、最近、よく思うんだ。

俺はオペレーター時代に、
WEBを勉強してWEBデザイナーになった。

あの頃は、インターネット全盛期だったし、
インターネットにすごく興味があった。

でも、あの頃にプログラミングを勉強していたら、
きっと違う未来になってたのかな・・。とか思って、
ちょっと、もったいないことをしたな・・。と最近、少し思い始めた。。

多分、昔のプログラマーは、
オペレーター時代にプログラムを勉強したんだろうね。


まあ、今は学校があるけどさ。
0626名前は開発中のものです。2010/09/21(火) 19:30:27ID:kgfEdF2W
>あの頃は、インターネット全盛期だったし、
今は衰退してきている訳ですね
0627名前は開発中のものです。2010/09/21(火) 19:30:56ID:EFC5zGpt
君はまず中学と高校できちんと西洋科学を勉強すべきだったと思うよ
0628名前は開発中のものです。2010/09/21(火) 19:32:19ID:K3ExNE1u
でも!

WEBを勉強したからこそ、
今の俺が存在するわけで・・。

どっちが正解かどうかなんて、
誰にも解らんだろう。


俺は汎用機のオペレーター、WEBサーバーのオペレーターを経て、
ちっこいWEB会社に就職してから、
独立しました。

多分、君は違う道を選んだのでしょう。

そんな別々の道を歩んだ者が、
こんなところでバッタリ出会ったのです。

なんか運命を感じるな。俺(^^
0629名前は開発中のものです。2010/09/21(火) 19:34:30ID:ITx99/mP
サーバーのオペレーターは何年間したのですか?
0630名前は開発中のものです。2010/09/21(火) 19:34:58ID:K3ExNE1u
ところで、そろそろ俺も本業の仕事をしなきゃいけなくなった。

俺は、これでも社長さんです。

責任感は誰よりも強い。


それがなかったら、
例え、個人業でも会社経営はやっていけない。

なので、ちょっとペース落とすよ。

実のところ、
仕事がたくさん溜まってたりします(^^;
0631名前は開発中のものです。2010/09/21(火) 19:35:16ID:kgfEdF2W
>>629
0年間
0632名前は開発中のものです。2010/09/21(火) 19:36:57ID:kgfEdF2W
小学生かよ
0633名前は開発中のものです。2010/09/21(火) 19:41:34ID:ITx99/mP
WEB会社の社長なら、著作権侵害すれば警察の家宅捜査が入って
PC関連全部を証拠品として取り上げられることを知っているはずだ
コンビニでおにぎり一つ盗んだだけで逮捕。みせしめですよ

やはり、小学生なのかな
0634名前は開発中のものです。2010/09/21(火) 19:42:39ID:K3ExNE1u
>>623
業務服務規程違反

って言葉を知ってるかい?ボク


社内の情報は、
社外に公開してはいけません。

たとえ、それがどんなに些細なことでも。

それが社会ってもんだし、
それが大人のルールです。


あなたは、どこの会社に勤めているか知りませんが、
入社する時に、ある書類にサインをしたはずです。


さて、メシでも食ってテレビ見て
仕事の書類に目を通します。
0635名前は開発中のものです。2010/09/21(火) 19:45:13ID:EFC5zGpt
サーバのオペレータが保守作業をするということがどうして秘密に当たるんだろう…
バスの運転手がギアチェンジするのも秘密なのかな
0636名前は開発中のものです。2010/09/21(火) 19:52:27ID:kgfEdF2W
とにかく、Kazukiが解説書けなくて困ってるっぽいのは分かった
昨日から準備中って書いてたじゃん
0637名前は開発中のものです。2010/09/21(火) 19:55:27ID:K3ExNE1u
ちなみに、俺が書いたオペレーターの仕事は、

「まあ。この程度なら業務服務規程違反に引っかからないだろう・・。」

と思って、細心の注意を払って、
もっと重要な情報を伏せて書いています。



俺は、これでも大人ですからね。

ガキみたいな感覚で、
ネットで発言なんてしないよ。

インターネットはね。

君が考えている以上に怖いから気をつけた方がいい。

損害賠償など、
とんでもない金額になる。

大手が扱っているのは、億単位のものですから。。
0638名前は開発中のものです。2010/09/21(火) 19:59:15ID:K3ExNE1u
>>636
画像はもう完成させた。

記事を書くぐらい5分もあれば十分。



でも、疲れたので、ちょっと休憩。。

今日中にはアップさせるよ。
ご心配なく。

では、この話題は終了。

上の人が可哀相だし・・。
0639名前は開発中のものです。2010/09/21(火) 20:01:42ID:kgfEdF2W
>>637
オペレーターなんてやった事ないんだろ?
適当な解説したところで>>617が正しい事書いたから
慌てて誤魔化そうとしてるんだろうけど、誤魔化しきれてないよ
次から嘘付くときは下調べをしっかりしようね
0640名前は開発中のものです。2010/09/21(火) 20:07:18ID:AUYbGnSz
散々利用させて頂いたバトーキン氏のデータ等を愚弄しておいて

>俺は、これでも大人ですからね。
>ガキみたいな感覚で、
>ネットで発言なんてしないよ。

どこのお口がこんな発言してるんでちょうねー
0641名前は開発中のものです。2010/09/21(火) 20:07:43ID:osQ4NIxS
>>617くらいの内容ならググッたら出てくるんじゃね
どっかの会社の求人の業務内容に書いてそうな感じ
0642名前は開発中のものです。2010/09/21(火) 20:15:31ID:K3ExNE1u
俺が夜勤勤務で一人で汎用機のオペレーターをしてて、
汎用機がダウンした時は、怖かったな・・。

室内に備え付けてあるランプが光って、
警戒音を室内に響きわたった・・。

俺、全身に鳥肌が立って、
泣きながらマニュアルを引っ張ってきて、
一人で復旧された。

マニュアルなんてね。
膨大にあります。

大きな本棚の中に、
たくさんのマニュアルが入っていて、
そこに復旧させる方法が書かれています。


詳しいことは言えないけど、
俺は金融関係の汎用機のオペレーターをやっていました。

つまり、朝の銀行業務開始までに
汎用機を復旧させなければ、
関西の全部の銀行が業務を開始することができません。

その被害金額は計り知れないでしょう。


なので、軽い感覚でオペレーターをやると、
痛い目に合うから気をつけた方がいい。
0643名前は開発中のものです。2010/09/21(火) 20:17:24ID:K3ExNE1u
俺はそれが怖いから、
オペレーターは二度とやりたくありません。


あ。俺が、どこで働いていたのかは絶対に言わないでね?

業界人なら、
これだけでも解るから。。
0644名前は開発中のものです。2010/09/21(火) 20:19:45ID:kgfEdF2W
妄想もいい加減にしろ
0645名前は開発中のものです。2010/09/21(火) 20:22:17ID:AUYbGnSz
知り合いに>>1みたいなヤツいるんだが
こういう人種が定期的にpopするのは何故なんだぜ?
0646名前は開発中のものです。2010/09/21(火) 20:24:05ID:K3ExNE1u
>>644
はいはい。

妄想妄想w


ま、こんな話題は止めましょう。


では、記事を書いてきます。
0647名前は開発中のものです。2010/09/21(火) 20:25:27ID:PlGQnRAj
ゲハ板なら2.3人いたな
自己愛性人格障害だっけ?
0648名前は開発中のものです。2010/09/21(火) 20:26:42ID:kgfEdF2W
>>646
>妄想妄想w
だよな。もし本当だって言い張ってたらお前を精神病院にぶち込む所だったぜ
0649名前は開発中のものです。2010/09/21(火) 20:27:00ID:K3ExNE1u
俺は、オペレーターは怖い。

ってことだけを言いたかっただけです。


上の人、これでいいかい?
君のおっしゃるとおり、
オペレーターの仕事は難しいです。
0650名前は開発中のものです。2010/09/21(火) 20:29:13ID:kgfEdF2W
ここで妄想を垂れ流すなよ…
2chはお前のチラ裏じゃねーんだよ
0651名前は開発中のものです。2010/09/21(火) 20:30:48ID:LFEJNZC+
こいつ日本語打てるとかすごいな
0652名前は開発中のものです。2010/09/21(火) 20:31:29ID:f2Sfy3iW
虚言癖があって善悪の区別の付いてない奴にメインフレーム任せる大企業がどこにあるんだよww
0653名前は開発中のものです。2010/09/21(火) 20:32:04ID:kgfEdF2W
>>651
俺の事?
確かに熱くなりすぎて変な事書いたかもね
不快に思ったんならすまん
0654名前は開発中のものです。2010/09/21(火) 20:32:57ID:nG5eaoRn
>>1がシスオペだった事が嘘でも真でも
ゲーム開発が進んでない事や
解説が間違いだらけな事や
今まで(今も?)他人の著作物を勝手に流用した事に変わりは無い

つーか別にクオリティはどうだって良いから
自分のコード
を見せて欲しい
結構前から言ってるけど出すのはDirectXの初歩とか、Windowの表示、それに解説の超基礎(それでも間違ってたりするけど)ばかり
解説書読めばそのまま書いて有るようなコードしかない
0655名前は開発中のものです。2010/09/21(火) 20:38:40ID:K3ExNE1u
>>507
初期化か・・。

初期化ね。

俺もDirect3Dの初期化には、
ずいぶん悩んだよ。

どーしても理解できなくて、
どんなに調べても理解できなくて苦労した。

でも、そのかいあって
理解することが出来ました。


実は、昨日、超BBSに、
Direct3Dの初期化のソースを書いておきました。

ある程度、理解できる人は参考にしてみてください。

ちなみに、前に言っていた「お返しに難しいことを教える。」はこれのこと。

でも、もう少し待っててね。
0656名前は開発中のものです。2010/09/21(火) 20:41:01ID:nG5eaoRn
誰にレスしてんだろ
0657名前は開発中のものです。2010/09/21(火) 20:41:18ID:kgfEdF2W
>>655
もうやだこの人
0658名前は開発中のものです。2010/09/21(火) 20:42:11ID:K3ExNE1u
ちなみに、これが現在の俺のレベルです。

俺は上級者?それとも入門者?

いえいえ。

俺は永遠の素人ですw
0659名前は開発中のものです。2010/09/21(火) 20:43:14ID:AUYbGnSz
>>655
>実は、昨日、超BBSに、
>Direct3Dの初期化のソースを書いておきました。

待ってました

ttp://www.shader.jp/xoops/html/masafumi/d3d01.htm

こちらのソースコードですね!
0660名前は開発中のものです。2010/09/21(火) 20:43:45ID:PlGQnRAj
>>655
こんなもんググレば大量にでてくるしMSDNにも無いか?
なーんの価値も無いよ
0661名前は開発中のものです。2010/09/21(火) 20:44:14ID:K3ExNE1u
あ。しまった・・。
レス間違えました。

訂正

>>655>>570へのレスです。
0662名前は開発中のものです。2010/09/21(火) 20:44:33ID:nG5eaoRn
平気でパクリしてさも自分で書いたかのようにする奴は
趣味マだけどマと認めたく無い
0663名前は開発中のものです。2010/09/21(火) 20:45:19ID:nG5eaoRn
>>661
>>570の意味理解してないね
0664名前は開発中のものです。2010/09/21(火) 20:45:33ID:kgfEdF2W
どんだけ馬鹿なんだこの人
だれか止めてやれよ…
0665名前は開発中のものです。2010/09/21(火) 20:45:56ID:K3ExNE1u
>>660
じゃあ、あなたにはこれを説明できるのかな?
0666名前は開発中のものです。2010/09/21(火) 20:48:59ID:K3ExNE1u
>>659
うん。それ。

難しいことは何も書いていません。

難しく見えるのは、
単語が複雑だからそう見えるだけで、
書かれている意味は、
C言語の基礎の基礎を使って定義しているだけです。
0667名前は開発中のものです。2010/09/21(火) 20:49:20ID:AUYbGnSz
>>659に記載したサイト様からDL出来るサンプルファイルの
"D3DSetup.cpp"と、そちら様の「Direct3Dの初期化ソース」なるものが
まったく同じな理由をご説明ください!
0668名前は開発中のものです。2010/09/21(火) 20:50:23ID:pmlmAOqn
>>665
じゃあ、あなたにはアレを説明できるのかな?
0669名前は開発中のものです。2010/09/21(火) 20:51:00ID:kgfEdF2W
>>667
Kazukiお得意の丸パクリですね
0670名前は開発中のものです。2010/09/21(火) 20:51:43ID:K3ExNE1u
ちなみに、これはフレームワークと呼ばれるもので、
誰が書いてもこうなります。

なので、こういうのは、
ネットで探して、
コピペで組んでいけばOKです。

そうやって時間短縮しましょう。
0671名前は開発中のものです。2010/09/21(火) 20:53:47ID:AUYbGnSz
>>670
いいえ、これは彼がクラス化したものです
誰が書いてもこうなるわけではありません
0672名前は開発中のものです。2010/09/21(火) 20:54:04ID:IPqEJBoH
こいつの「理解した」っていうのは
「(丸パクすれば良いことを)理解した」って言うことなのか
0673名前は開発中のものです。2010/09/21(火) 20:54:43ID:K3ExNE1u
>>671
うっせーよw

だまらっしゃい。
0674名前は開発中のものです。2010/09/21(火) 20:56:49ID:nG5eaoRn
>>671
kazukiはクラスとかわかんないんだろw
0675名前は開発中のものです。2010/09/21(火) 20:57:40ID:K3ExNE1u
>>672
書かれていることを理解するということです。

でも、使う時は、
コピペでもいいでしょ。

ちょこっと変えればオリジナルになる。


変数名を変えるとか、
構造体名を変えるとか。
0676名前は開発中のものです。2010/09/21(火) 20:59:03ID:nG5eaoRn
>>675
そんなのはオリジナルじゃねえよ

こんな感覚だからいつまでたってもオリジナルのコードが出てこないんだな
0677名前は開発中のものです。2010/09/21(火) 20:59:35ID:IPqEJBoH
>>675
人、それを丸パクという
0678名前は開発中のものです。2010/09/21(火) 20:59:37ID:ZtPa8vBf
他人のコードパクッて、変数名と構造体名を変えたらオリジナルって正気かよ
0679名前は開発中のものです。2010/09/21(火) 21:01:39ID:nG5eaoRn
てか
>>570
みてDXの初期化の話しし出すとか
for文も分かってないようだ
0680名前は開発中のものです。2010/09/21(火) 21:02:48ID:K3ExNE1u
>>674
いつの話をしてんだよ。

C++を使うなら、
クラスぐらい知らなきゃ話にならないでしょ?


>>676
俺は別にオリジナルでなくてもいいと思っています。

どうして、あなたは、そこまでオリジナルに拘るの?

知識自慢をしたいからか?


ネットに公開されてるんだから、
それをコピペすればいいじゃないか。

必要ないところは、NULLを指定して使うとかさ。
0681名前は開発中のものです。2010/09/21(火) 21:04:22ID:EFC5zGpt
>>675
http://ja.wikipedia.org/wiki/%E7%9B%97%E4%BD%9C
盗作
盗作(とうさく)とは、他人の著作物にある表現、その他独自性・独創性のある
アイディア・企画等を盗用し、それを独自に考え出したものとして公衆に提示
する反倫理的な行為全般を指す。「剽窃(ひょうせつ)」とも呼ばれる。
オマージュ、パロディとは区別される。
0682名前は開発中のものです。2010/09/21(火) 21:05:23ID:kgfEdF2W
>>680
他人のコードのコピペで自分の作品が作れると思ってるのか?
0683名前は開発中のものです。2010/09/21(火) 21:05:24ID:K3ExNE1u
>>681
バカめw
0684名前は開発中のものです。2010/09/21(火) 21:07:03ID:ZtPa8vBf
他人のコードを使うなとは言わんが、丸コピペしてきて

>実は、昨日、超BBSに、 Direct3Dの初期化のソースを書いておきました。
>ある程度、理解できる人は参考にしてみてください。
>ちなみに、前に言っていた「お返しに難しいことを教える。」はこれのこと。

はないだろ
0685名前は開発中のものです。2010/09/21(火) 21:07:39ID:3/NApKxK
http://kazukomiyashita.blog118.fc2.com/
0686名前は開発中のものです。2010/09/21(火) 21:07:51ID:aqn5gOVm
予想通りの本性でワロタw
0687名前は開発中のものです。2010/09/21(火) 21:08:04ID:EFC5zGpt
自分の(知)財保護に熱心な奴ほど他人の権利を蔑ろにしやすいよな。あるいは王権思想の表れだろうか。
コードをパクる奴はみんなそういう言い訳をする
0688名前は開発中のものです。2010/09/21(火) 21:08:25ID:K3ExNE1u
>>682
いやwだからwww

Direct3Dの初期化とか、
そういうのはコピペでもいいでしょ?

もちろん、その中身は自分で組まなきゃ、
自分が作りたいものは完成しないよ。


int a =0;


これも初期化だよね?

これをネットからコピペしたら、
盗作になるのかい?

盗作にならないために、

int z =0;
こんな風に書かないといけないのか?
0689名前は開発中のものです。2010/09/21(火) 21:09:48ID:K3ExNE1u
ホント、あんたは頭が硬いよ。

ダイアモンドヘッドだwあんたはww
0690名前は開発中のものです。2010/09/21(火) 21:10:33ID:EFC5zGpt
>>688
初期化部分は誰が書いても同じにはならないし、自分で書く能力が無いのであれば
なおのこと
0691名前は開発中のものです。2010/09/21(火) 21:10:49ID:aqn5gOVm
すぐに極論に飛ぶ辺り、ほんとに子供っぽいなw
0692名前は開発中のものです。2010/09/21(火) 21:10:52ID:AUYbGnSz
>>680
>クラスぐらい知らなきゃ話にならないでしょ?

ではなぜ

>誰が書いてもこうなります。

と言ったのでしょう
該当のソースコードを見る限り、D3DやWinAPIの初期化をクラス化し
読みやすさと再利用を考慮したソースコードに仕上がっているのに
0693名前は開発中のものです。2010/09/21(火) 21:11:46ID:ZtPa8vBf
クラスのこと説明してみ
0694名前は開発中のものです。2010/09/21(火) 21:13:06ID:K3ExNE1u
>>684
ホント、うっとうしいやっちゃな・・。

じゃあ、「書いた」を「投稿」と脳内変換して読んでくれ。

掲示板に投稿することを書くと表現するのです。


俺は、そんなこと言ってるのではない、
これの意味を図解入りで詳しく解説する。
と言ってる。

もういい!俺泣くからw!
0695名前は開発中のものです。2010/09/21(火) 21:13:29ID:AUYbGnSz
>>688
使用するデータにもよりますが、便宜上「int」とし「a」を変数名とする場合

int a = 0; // 何々に利用する変数a

と、私なら書きますが
0696名前は開発中のものです。2010/09/21(火) 21:15:23ID:K3ExNE1u
要するに、俺は初心者に解りやすく解説できればいい。

ただ、それだけ。
0697名前は開発中のものです。2010/09/21(火) 21:16:03ID:4Nsvhv11
>>658
>ちなみに、これが現在の俺のレベルです。
なるほど、コピペが出来るレベルなのね、確かにその程度だわ
0698名前は開発中のものです。2010/09/21(火) 21:16:22ID:EFC5zGpt
>>694
いくら泣いても盗作は正当化されないから
好きなだけそこで無様に泣いてていいよ?
0699名前は開発中のものです。2010/09/21(火) 21:16:22ID:aqn5gOVm
初心者にわかりやすく「挑戦」だろw
0700名前は開発中のものです。2010/09/21(火) 21:17:25ID:kgfEdF2W
>>696
なんで自称素人のあんたが初心者に解説する必要があるんだ?
自分一人でコソコソやってろよ
0701名前は開発中のものです。2010/09/21(火) 21:17:27ID:AUYbGnSz
>>696
本人のプログラムに対する理解が歪曲しているのに
解りやすく? 初心者に解説?

どうかしら
0702名前は開発中のものです。2010/09/21(火) 21:18:23ID:EFC5zGpt
http://ja.wikipedia.org/wiki/%E8%87%AA%E5%B7%B1%E6%84%9B%E6%80%A7%E4%BA%BA%E6%A0%BC%E9%9A%9C%E5%AE%B3
http://homepage1.nifty.com/eggs/narcis.html
http://kousyoublog.jp/?eid=801

…どうなんだろう。主にとって憐れみを受けることは耐え難い屈辱なのかな?
愉しいなぁ
0703名前は開発中のものです。2010/09/21(火) 21:20:31ID:K3ExNE1u
あ。ちなみに俺、
>>659のサイトを参考にしてDirectXを勉強しました。

すごく解りやすいから、
知りたい人は、どうぞ見てきてください。
0704名前は開発中のものです。2010/09/21(火) 21:21:14ID:kgfEdF2W
>自己愛性人格障害(じこあいせいじんかくしょうがい、英語: Narcissistic Personality Disorder)とは、ありのままの自分を愛せず、
>自分は優越的で素晴らしく特別で偉大な存在でなければならないと思い込む人格障害であるとされる。
>過度に歪んだルールである内的規範が弱いケースであるため、精神病的に扱われる事もある。
完全に>>1と同じで驚いた
病院池
0705名前は開発中のものです。2010/09/21(火) 21:25:07ID:K3ExNE1u
記事、執筆中。

また、なんか動画貼っとこう。


そのうち動画が合図だと思ってくれるでしょうし(^^

では、また後でね。
0706名前は開発中のものです。2010/09/21(火) 21:25:35ID:IPqEJBoH
>>694
>じゃあ、「書いた」を「投稿」と脳内変換して読んでくれ。
「お返しに難しいことを教える。」の内容がその「投稿」なんだろ?
教えるって言うのは、自分の知識を相手に伝えるということだとすると、
その「投稿」は>>659のページの人の知識であり、
あんたの知識ではないだろ
もし、そのソースコードが有用で便利だと伝えたいなら、
大本のページを教えるのが常だろう

そして「教える」というからには、その「投稿」について責任を持つってことだよな?
そのコードに関するあらゆる質問に対して明確な回答をすることが出来るのか?
この場合、「どうでもいいし」は使えないぞ
それは確実に責任放棄だからな
0707名前は開発中のものです。2010/09/21(火) 21:25:58ID:kgfEdF2W
>>705
違法動画が更新の合図っすね!!
0708名前は開発中のものです。2010/09/21(火) 21:26:40ID:EFC5zGpt
却って仕事は普通の人よりできるらしいから、営業とかなら成功できるんだろうな。
しかし>>1の状態が精神病とかそれに近いレベルだとすると、このスレは池沼叩きスレと
何ら変わるところがなくなるというダィレマ。
0709名前は開発中のものです。2010/09/21(火) 21:26:47ID:AUYbGnSz
>>703
参考にならないわけではないけれど、情報としては古いので
オススメできません^^

著者の新サイトの方をご覧ください
0710名前は開発中のものです。2010/09/21(火) 21:28:49ID:nG5eaoRn
>>680
>ちょこっと変えればオリジナルになる。
を受け
>そんなのはオリジナルじゃねえよ
っていったのにオリジナルじゃなくていいって言われてもな
自分の
>オリジナルになる。
を否定するってことでいいのか?
0711名前は開発中のものです。2010/09/21(火) 21:30:33ID:kgfEdF2W
何書いてもスルーされるから無駄だよ
0712名前は開発中のものです。2010/09/21(火) 21:32:25ID:EFC5zGpt
http://hibari.2ch.net/test/read.cgi/sec/1277560774/l50
コニーちゃんと遊んでた時のことを思い出したわ
こいつも定期的に自己リセットかけてたなぁ
0713名前は開発中のものです。2010/09/21(火) 21:33:48ID:epIgjSVH
だれか、教えてほしいのだけど
VSのVC++を使ってるけど、強烈に重い。PCが古いからしかたない。

なんとか、軽くする方法を教えて欲しい。 現状はノーマル。
4649
0714名前は開発中のものです。2010/09/21(火) 21:35:15ID:OAXm6z6q
つーかkazukiにとって「難しいこと」がウィンドウの表示なのね…
0715名前は開発中のものです。2010/09/21(火) 21:35:26ID:kgfEdF2W
>>713
板違い&スレ大違い
誘導:
vs2010 http://hibari.2ch.net/test/read.cgi/tech/1280640267/
vs2008 http://hibari.2ch.net/test/read.cgi/tech/1269602041/

0716名前は開発中のものです。2010/09/21(火) 21:36:12ID:epIgjSVH
>>715

OK、ありがとう。
0717名前は開発中のものです。2010/09/21(火) 21:45:02ID:X+nLymxo
なるほど、こうやってサイトのアクセス数を増やすのか。
Kazuki先生はなかなかのテクニシャンですね。
参考になります。
0718名前は開発中のものです。2010/09/21(火) 21:45:22ID:EFC5zGpt
主にとって他人の話を聞くとこが不可能だってことがこのスレで合意されちゃうと
誰も書き込んでくれなくなるね
0719名前は開発中のものです。2010/09/21(火) 21:48:25ID:aqn5gOVm
>>718
それでも本人は

「このスレを大勢の初心者がみてる。初心者は2chが怖くて書き込めないから。」

とか信じこんじゃうよw
0720名前は開発中のものです。2010/09/21(火) 21:49:46ID:AUYbGnSz
他者の話は右から左に流すし、source codeも右から左に丸写しだし
演算も右から左に流れるんでしたっけ^^
0721名前は開発中のものです。2010/09/21(火) 22:12:55ID:EFC5zGpt
自分を愛するためだけだからどうでもいいよそんなこと。それよりもっと感謝されなきゃ。
大変大変。君等みたいに暇じゃないんだよ^^
0722名前は開発中のものです。2010/09/21(火) 22:52:44ID:K3ExNE1u
重い・・・。


現在、極度にアクセス集中中・・。

もうちょっと待っててね。(^^;


みんなの元気玉にサーバーのCGIが持ち堪えられねーww

みんなオラに元気をwww
0723名前は開発中のものです。2010/09/21(火) 22:56:18ID:K3ExNE1u
アクセスが集中し過ぎて
サーバーが悲鳴を上げてますのでw

もう少しあとでアップすることにします。

非公開状態で待機中です。
しばらく、アクセス控えてください。。


でも、多分、これで「後ろから前に向かって」をうまく解説できてると思うな。(^^
0724名前は開発中のものです。2010/09/21(火) 22:59:22ID:K3ExNE1u
よし。

一瞬、アクセスが落ちた隙にアップしたw

ふう・・。

さあ、どうぞご覧ください(^^
0725名前は開発中のものです。2010/09/21(火) 23:02:36ID:f2Sfy3iW
例によってデタラメwww
0726名前は開発中のものです。2010/09/21(火) 23:05:14ID:nG5eaoRn
あれだけ詳しく説明されても後ろから前とか言い続けるのか
0727名前は開発中のものです。2010/09/21(火) 23:06:40ID:K3ExNE1u
>>725
何にも解ってないくせによw

そうセリフを履いておいて、
他のプログラムを知ってる人に助け舟を出してもらおうとしてんだろ?(^^

そして、それに乗っかって自分も
それに合わせて発言するとw


どこをどう見ても間違ってないし、
デタラメなら、どこがデタラメなのかを
あなたの口で言いなさい。

デタラメということなので、
間違いは一つではなく複数ですね?


はっきり言おう。
ズバリ!あなたは、プログラムのプも知らない素人です。

これだけは間違いない。

あなた以外の住人が、
プログラムを理解しているのです。
0728名前は開発中のものです。2010/09/21(火) 23:08:12ID:aqn5gOVm
ロリポップとWordPressの相性が悪いのは有名な話じゃね?
0729名前は開発中のものです。2010/09/21(火) 23:08:35ID:f2Sfy3iW
なぜ switch (A+b) ではなく switch (b=A+b) としたのか、説明してくれ。
0730名前は開発中のものです。2010/09/21(火) 23:09:27ID:rsDsUYgY
後ろから前に向かって と メモリ内部の部分がデタラメ
0731名前は開発中のものです。2010/09/21(火) 23:10:01ID:K3ExNE1u
各演算子に意味が含まれているのです。


でも、考え方は、後ろから前です。
0732名前は開発中のものです。2010/09/21(火) 23:12:21ID:aqn5gOVm
相変わらず#defineを勘違いしたままか。
0733名前は開発中のものです。2010/09/21(火) 23:13:56ID:osQ4NIxS
switch (b=A+b)ってなんぞwwww
0734名前は開発中のものです。2010/09/21(火) 23:17:58ID:X+nLymxo
基礎を疎かにして、独学で言語を学ぶと
こんなイビツな考え方をしてしまうんだな。
0735名前は開発中のものです。2010/09/21(火) 23:19:44ID:osQ4NIxS
そういやまだ#defineを格納とか書いてるなwwww
0736名前は開発中のものです。2010/09/21(火) 23:20:05ID:f2Sfy3iW
>>727
何もわかってないのは君だろう。

(1) マクロはメモリ上に格納されない
(2) switch の式で代入する意味が無い
(3) C言語は「後ろから前へ計算する」がでたらめであることはすでに散々指摘済み(>>545は試してみたか?)
(4) 「これを条件分岐といいます」が意味不明 (if文は条件分岐ではないのか?)
(5) case ラベルの値を「式の答え」は意味不明
(6) ここで演算子の話が出てくるのは不適切。演算子は switch のついでで説明す
  るようなものではない。また「向き」が何の向きなのか不明確
0737名前は開発中のものです。2010/09/21(火) 23:22:00ID:f2Sfy3iW
ま、

 ifよりも条件分岐の方をよく使います。

の謎は(予想されてたけど)明らかになったなwww
0738名前は開発中のものです。2010/09/21(火) 23:23:27ID:yiX2zEPh
ここまでくると、わざと間違えてるとしか思えない
優先順位の表を見てると、演算子の人気ランキングに見えてきたしw
0739名前は開発中のものです。2010/09/21(火) 23:25:29ID:aqn5gOVm
こいつはもしかして代入(=)を行わないとメモリ上に格納されないから
他の処理で一切その数値を使えないとか思ってない?

そう勘違いしてるとすれば#defineで「メモリ上に格納される」とか変数と勘違いしたり
switchで代入したりとか奇天烈なことを言ってるのもわかるような気がするw
0740名前は開発中のものです。2010/09/21(火) 23:25:43ID:yiX2zEPh
お前ら間違い指摘するんじゃねーぞ
0741名前は開発中のものです。2010/09/21(火) 23:26:34ID:osQ4NIxS
-> ってポインタ参照してのアクセスに使うやつじゃないっけ? . と同じものみたいに書かれてるが
0742名前は開発中のものです。2010/09/21(火) 23:27:06ID:A3rTjQjP
>>685
応援してる
0743名前は開発中のものです。2010/09/21(火) 23:27:20ID:IPqEJBoH
A=1、b=1で、b=A+bを前から評価してもbには2が入るぞ
b=A+bという式の中には演算子が2つ(=,+)がある
この二つの演算子の優先順位をみると+のほうが高い
よって演算は(+の評価が先に行われ、A+bを計算し2という結果を得る
その後、=が評価されb=2が実行され、bに代入される

switchの評価は、()内の演算がすべて終わった後に評価されるので、
演算の結果残るのは、bであり、その中身2が評価されることになる

これは1+2*3の計算をする場合と同じ、
先に2*3を計算し6を得た後に、1+6を計算する
結果7という答えを得る。
本文中の(b=A+b)->(1=1+1)という解釈されるなら、
1+2*3も+が先に評価されて9という答えが返ることになるが

あと質問したいんだが、
>>1のなかで「前から後ろ」に計算する場合
A=2,b=1のとき、
b=A+bの評価はどうなるのか答えて欲しい
0744名前は開発中のものです。2010/09/21(火) 23:29:05ID:K3ExNE1u
>>741
疲れたので、あとで確認しておくよ。


>>733
>switch (b=A+b)ってなんぞwwww

そんなこと言われてもなーw(^^

スイッチを使ってるだけです。
0745名前は開発中のものです。2010/09/21(火) 23:29:20ID:f2Sfy3iW
>>739
そんなところだろうな

で、問い詰めると例によって

  ・switch(b=A+b) も switch(A+b) も意味は同じ、どっちでもいい
  ・switch(A+b) ではなく switch(b=A+b) としたことに理由なんてない。そうしたかっただけ

とかイカれたことを言うんだろうな
0746名前は開発中のものです。2010/09/21(火) 23:31:24ID:K3ExNE1u
上の解説は飾りみたいなもので、
最後の表が一番重要かな?
0747名前は開発中のものです。2010/09/21(火) 23:32:02ID:f2Sfy3iW
> スイッチを使ってるだけです。

スイッチを使うのに意味もなく代入してるのはなぜ?って聞かれてるんだって、わからない…んだろうな。
0748名前は開発中のものです。2010/09/21(火) 23:32:13ID:osQ4NIxS
>>744
確認=ググる

switch文くらいでエラソーにしてんじゃねーよ
0749名前は開発中のものです。2010/09/21(火) 23:32:31ID:aqn5gOVm
あと、演算子の優先順位の表。
単項演算子-をマイナスとか書くなよw

それで一番重要とかお前が一番判ってないっつーの
0750名前は開発中のものです。2010/09/21(火) 23:32:46ID:K3ExNE1u
>>745
うん、その通りだよ。

そういう風に解説したいから、
そう解説しているだけです。

意味などない。
0751名前は開発中のものです。2010/09/21(火) 23:33:26ID:oKFd/EvV
理論演算子?
0752名前は開発中のものです。2010/09/21(火) 23:37:03ID:aek2RRfH
hpの画像が小さくて見えないんだけど、どうしてなの? 
0753名前は開発中のものです。2010/09/21(火) 23:37:24ID:osQ4NIxS
もしかして: 論理演算子

kazukiは理論ってことにしたいらしいな
またどうせ「そんなことはどうでもいいのです(^^そんなこと知らなくても(ry」とか言い出すぞ
0754名前は開発中のものです。2010/09/21(火) 23:45:26ID:K3ExNE1u
>>751
しまったw


急いで作ったから間違えたwww

それぐらい見逃してください。
あとで直しておきます。(^^

ご指摘ありがとう。


ふう。。ところで俺は疲れた。

ここ連日、ハイペースで公式サイトを更新してきましたからね。(^^;

なので、ここでちょっとペースダウンさせよう。
仕事も溜まってるし、
そっちも片付けることにします。
0755名前は開発中のものです。2010/09/21(火) 23:45:25ID:X+nLymxo
つっこみどころはいっぱいある。

あいかわらずマクロの定義が実行時メモリに確保されているかのような図。

bをグローバル変数にしていること。

bに意味もなく1の初期値を与えていること。

なぜわざわざ switch(A+b)ではなく、switch(b=A+b)としたのか?
代入に意味を持たせたいなら、

b=A+b;
switch(b) {..

とすればいいのではないのか?

#define A 1
int b = 1;
:
switch(2 * (b=A+b) + (b-4)) {
:
}

の場合はどういう順で解釈するのか?
switch文の後のbの値が何かわかる?
0756名前は開発中のものです。2010/09/21(火) 23:46:33ID:LXJVfUPR
今日もkazukiであることに全く隙がないなw
0757名前は開発中のものです。2010/09/21(火) 23:49:20ID:K3ExNE1u
>>755
それでもいいけど。

俺は、スイッチには「式を入れることが出来る」ということを
一番、言いたかったのです。

外で計算するんじゃなくて、
そこで計算させる。


そうすれば、ソースが短くなっていいでしょ?

そんでもって、その「式の答え」と表現すれば
解りやすいじゃないか。

多分、こんな解説してるの俺だけだと思うけど、
こういうのが、オリジナルです。


俺は教科書を読んで勉強して、
そこに載っていることだけを学んでいるのではない。

「自分で研究」して学んでいます。

なので、あんな解説になりました。
0758名前は開発中のものです。2010/09/21(火) 23:49:59ID:f2Sfy3iW
> そういう風に解説したいから、
> そう解説しているだけです。

不必要な代入をするのは馬鹿。

代入することで、以後の状態が変化する (副作用があるという)。つまり、それ以前と
それ以後で、同じ処理をしても結果が異なる場合が生じる。

そういう副作用のある処理を不必要にするべきではない。

代入の必要がある場合でも

b=A+b;
switch(b) {…

と書くべき。(そこで状態が変化していることを switch 文の中に埋め込んで見えにくくするべきでない)

まして「初心者むけの解説」で不必要なことを書く事で、例えば

  switchの式には代入文を書く

みたいな勘違いを生むことがわからないのか?お前みたいな。
0759名前は開発中のものです。2010/09/21(火) 23:51:28ID:jmqnUjZo
>>1さん
あんたを理解するために>>743の最後の質問だけ答えてくれ
0760名前は開発中のものです。2010/09/21(火) 23:52:55ID:nG5eaoRn
ほかに解説されていない=そんな使い方をしないし、しない方がいい
って風に思わないのがKazukiクオリティ
てか、毎回解説の焦点が定まってないというか、恐ろしく初心者を混乱させるような物だな
初心者が張りぼての知識を教えるときによくなる状態
0761名前は開発中のものです。2010/09/21(火) 23:53:20ID:osQ4NIxS
>そうすれば、ソースが短くなっていいでしょ?
無意味な代入して文字数増やして何言ってるんだ

行数減らしたきゃムリヤリ一行にでも書いたらいいだろ…
0762名前は開発中のものです。2010/09/21(火) 23:54:07ID:K3ExNE1u
>>755
>bに意味もなく1の初期値を与えていること。

だから、そうやって解説したいからです!って言ってんだろうがぁぁぁおーーん!!


bをね?1にすることで、
Aもbも1になりました。

その状態で計算式を考えて見ましょう。

前から後ろに向かって考えれば、
先頭のbに1が入ってしまいます。

それは間違いなんだよ?ということを解説したいから、
ああいう解説にしました。
0763名前は開発中のものです。2010/09/21(火) 23:54:40ID:aqn5gOVm
式と値のどちらでもいい。ってことをちゃんと説明するべきだろ。
それが初心者向けの親切だとおもうぜ。

自分の間違いにそれっぽい言い訳を付けて誤魔化すのも大変だろ。
素直に受け入れようぜ。
0764名前は開発中のものです。2010/09/21(火) 23:56:58ID:nG5eaoRn
>>762
前から後ろに考えてもbに2が代入されるから
>>743
見ても分からないのか??
0765名前は開発中のものです。2010/09/21(火) 23:57:31ID:f2Sfy3iW
> 俺は、スイッチには「式を入れることが出来る」ということを
> 一番、言いたかったのです。

それなら switch(A + b) で十分だろ。代入の必要はないのだから。

「初心者に親切に」なら

 (1) switch(b) で、b の値によって処理が変わることを示す
 (2) switch(A + b) の例を示して、switch() には式を書く事も出来ることを示す
 (3) (あくまでもおまけとして) 「C言語では代入も式だから(値を持つから)」 代入式を書くことも出来ることを示す
   その際には、
      これはあくまでも説明のための例で、意味のない代入はすべきでないこと
   も説明すべきだな
0766名前は開発中のものです。2010/09/21(火) 23:58:00ID:K3ExNE1u
答えが1になったからaが表示されました。

答えが2になったのでbが表示されました。

と言った方が解りやすいよ。
0767名前は開発中のものです。2010/09/21(火) 23:58:56ID:aqn5gOVm
>>762
>前から後ろに向かって考えれば、
>先頭のbに1が入ってしまいます。

何言ってるんだよw
=と==の区別ついてねぇだろこいつ。
代入演算子をちゃんと理解しろよ。
0768名前は開発中のものです。2010/09/22(水) 00:00:44ID:f2Sfy3iW
> 前から後ろに向かって考えれば、
> 先頭のbに1が入ってしまいます。

それは単に代入の意味がわかってないからで、「前から後ろに考えるから」ではない。
0769名前は開発中のものです。2010/09/22(水) 00:01:35ID:K3ExNE1u
>>767
==は、比較演算子
=は、代入演算子

ってハッキリ言ってるでしょ?

そんな人に向かって、
区別ついてないとか、よく言えたね?

まあ、いいや。


今日はいい仕事したよ。

いつも解説をアップした後は、
スッキリした気分になる。(^^

ちょっと、スナックでも行ってくるか(^^

今でもやってるかな?
0770名前は開発中のものです。2010/09/22(水) 00:03:27ID:fNppjQx5
ID変らないうちに。

>>619
自分と付き合って運用屋さんはインフラの手配からして、イレギュラーなトラフィック上昇以外では
ダウンタイムを保証したサービスを提供しているようなところ(その代わり大規模なところはサポートしてないけど)なので、
多くを求めすぎているのかも。
大規模サービスを提供しているDCのオペレータはそんなもんなのかもね?

>>622 K3ExNE1u
それに比べて何お前?
>社外秘情報だろ・・それ・・。
>そんな細かいことを書いちゃいけない。
とか。

俺は開発屋だが、どう考えてもちょっと考えたら出てくる抽象的な内容だろ?

正直開発屋から見た運用屋っていうのは、システムの安定運用のために、
本番環境については些細なバージョンアップも躊躇うような人種だぞ?
自分で挙げた例で言えば、データ取得の自動化も手で打ってるのをスクリプトにしただけでも
問題ないか開発に確認してくるような奴らだ。

彼らのノウハウは、より具体的で長期運用している現場じゃないと
知ることができないようなイレギュラーな現象への経験や生の統計データにある。
それを一般的に表現しただけで社外秘とか舐めてるとしか思えない。

IDを追いかける限り、まるで自演してるようにしか見えないのだが、大丈夫?
07717702010/09/22(水) 00:04:27ID:fNppjQx5
間に合わなかったorz
0772名前は開発中のものです。2010/09/22(水) 00:04:30ID:go2dVt0W
>>769
名前だけ知ってたって意味ないよ。
どういう役割なのか理解してないようにしかみえないからな。
0773名前は開発中のものです。2010/09/22(水) 00:04:38ID:uXUhUOYT
演算子の優先順位や結合規則書いてるのに後ろから前って言い続けるってことは
優先順位、結合規則理解できてないんだろうな
0774名前は開発中のものです。2010/09/22(水) 00:06:06ID:ZhuFa4Bc
>>766
ならなおさら意味不明な代入なんてすべきじゃないな

A が 0 の場合
  A+b の値が 1 なので "a" が表示されました

A が 1 の場合
  A+b の値が 2 なので "b" が表示されました

でいいじゃないか。
0775名前は開発中のものです。2010/09/22(水) 00:08:09ID:go2dVt0W
やっぱり代入しないと数値は使えないって信じ込んでるっぽいよ。
0776名前は開発中のものです。2010/09/22(水) 00:10:21ID:ZhuFa4Bc
>>769
代入演算子の働きが

  「左側の式が示す場所 (左辺値)」に右側の式の値 (右辺値) を格納すること
  (かつ、演算の結果の値は右辺値になる)

だと知ってれば「前から後ろ」だろうが「後ろから前」だろうが結果は同じだろ。だから
代入演算子を理解してないと言われる。
0777名前は開発中のものです。2010/09/22(水) 00:11:53ID:KlyUHZKS
>>770
IDなんて気にすんな。おぼっちゃまw


俺は社会の仕組みをだな、解りやすく伝えて、
それ以上、行くととんでもない情報を公開してそうになったので、
流れを変えるために、

「それ以上言うな」的なことを言って、
彼に「目を覚まして!ここは掲示板だぞ!ネットだぞ!」ということを気づかせるために
ああいうことを言ったの。

多分、彼もそれに気づいたはずだと思う。


業務の内容とかを喫茶店で話すことも実はダメです。

なんて言ったかな・・・。

そういう決まりになってるのよ。

この業界の人は、特にそういうことには気をつける必要がある。

うっかり発言は、とんでもない問題に発展する。
0778名前は開発中のものです。2010/09/22(水) 00:11:54ID:uXUhUOYT
前の
a=bをa=a+b
ってしてることといい
今回のswitch文で無駄な代入してることといい
代入辺りで致命的な勘違いをしてる気がする
0779名前は開発中のものです。2010/09/22(水) 00:12:16ID:go2dVt0W
算数の=に引っ張られてるんだよな。
0780名前は開発中のものです。2010/09/22(水) 00:14:18ID:uXUhUOYT
絶対的に>>1より>>617の方が社会経験もネットリテラシーもあるだろ
0781名前は開発中のものです。2010/09/22(水) 00:14:19ID:KlyUHZKS
思い出した。

「情報漏えい」だw


では、ちょっと出掛けてくる。
0782名前は開発中のものです。2010/09/22(水) 00:14:52ID:WX+EEY4l
本日のkazukiID ID:KlyUHZKS
0783名前は開発中のものです。2010/09/22(水) 00:14:56ID:a9eeuuzq
>>743に答えてくれないのか
まぁ>>762の答えから想像すると
A=2,b=1で(b=A+b)は(1=2+1)っていう評価になるんだろうな
という言うことで、Kazukiくんの「後ろから前」っていう解釈がわかった気がするぜ

たぶん式の評価のときに変数も一緒に置き換えてるんだろうな、
・前から
b=A+b -> 1=A+b ->=は優先順位が低いので飛ばす-> 1=2+b ->
-> +評価 -> 1= (2+1) -> 1 = 3 -> =評価 →
-> リテラルなので代入されない -> 結果1
・後ろから
b=A+b -> b=A+1 -> +評価 -> b=(2+1) -> b = 3 -> =評価 -> bに3が代入される

たぶんこんな理解してんじゃね?
0784名前は開発中のものです。2010/09/22(水) 00:16:47ID:go2dVt0W
>>778
というより最初にメモリ云々の解説してる感じからして
「メモリに格納」は「=を使う」
「メモリに格納されていないとプログラム上で利用できない」
って解釈で無理矢理代入してるんだと俺は思ってるんだがw
0785名前は開発中のものです。2010/09/22(水) 00:16:52ID:ZhuFa4Bc
ttp://www.kazuki-sendo.com/game/wp-content/uploads/10-6.jpg

この図見てなんで「後ろから前」に拘るのかなんとなくわかったわ


 A が 1 で b も 1 のとき

 b = A+b

の中の b, A, b を頭から b→1 A→1 b→1 と置き換えてくと

 1=A+b
 1=1+b
 1=1+1

になっちゃって等号が成り立たない。後ろからなら

 b=A+1
 b=1+1

でこの段階でまだ左辺の b は確定しない(?)から b→1 とするのは止めて等号が成り立つように
bに2を入れてやれば

 2=1+1

と等号が成り立って、かつ b に 2 が入る

そんなことなんだろうな…
0786名前は開発中のものです。2010/09/22(水) 00:20:05ID:ZhuFa4Bc
「守秘義務」だろうに…

やっぱり中学生にしか見えない
0787名前は開発中のものです。2010/09/22(水) 00:20:34ID:KlyUHZKS
>>785
ありがとう!!(涙

やっと、俺の言ってること解ってくれる人がいた!!

ヒデキ感激・・じゃなくてw
Kazuki感激!!


うえwwうえwwwww

でも、俺が言いたかったのは、
そういうことっす(^^

皆さんも、そんなに難しく考えないでください。
0788名前は開発中のものです。2010/09/22(水) 00:22:16ID:uXUhUOYT
もしかして:
switch文の説明みると評価式と書いてあるぞ
式なんだー
式といえば(数学を思い出して)1+1=2の形だな
でも"a+b=b"これじゃプログラムでは上手くいかない><
お、逆にすれば上手く動くぞ!
そうかプログラムでは後ろから前に計算するんだ!


がんばって思考を考えてみた
0789名前は開発中のものです。2010/09/22(水) 00:30:22ID:KlyUHZKS
>>788
なにそれww
0790名前は開発中のものです。2010/09/22(水) 00:30:46ID:ZhuFa4Bc
>>787
礼を言われる筋合いはない。お前がどう考えてるかわかったというだけで、
それを肯定する気は微塵もないのだから。
0791名前は開発中のものです。2010/09/22(水) 00:30:54ID:rOzISJN3
>>787
完全に頭悪いな
0792名前は開発中のものです。2010/09/22(水) 00:31:21ID:uXUhUOYT
>>789
お前の解説はこうでもしないと理解出来ないんだわ
0793名前は開発中のものです。2010/09/22(水) 00:31:44ID:ULlTcfuE
やっぱり、=を代入じゃなくて、
等号記号だとみてんじゃねーかw
0794名前は開発中のものです。2010/09/22(水) 00:32:47ID:ZhuFa4Bc
>>789
お前に笑う資格はない。>>788はもちろんおかしい(*1)
だがお前の考えも同程度におかしい

(*1) もちろん>>788はわざとおかしいことを書いているのだろうけど
0795名前は開発中のものです。2010/09/22(水) 00:37:10ID:9m8CqZha
式とか、答え、とか書いているから、
C言語の構文が算数の式と結びついて
離れないみたいだな。
0796名前は開発中のものです。2010/09/22(水) 00:37:32ID:a9eeuuzq
>>785
が正解か
じゃー
a=1,b=2,c=3で
a= (b= a+c) + a + (c=a+b)
はどうなるんだろうな

「後ろから」だと8になって、
「前から」だと10になるぜ
そして実際計算させると10だぜ
この問題をどう解釈する?
0797名前は開発中のものです。2010/09/22(水) 00:37:46ID:ZhuFa4Bc
ああ、そういえば「A が 1 に置き換わる」点だけは正しいな。
もっとも、>>785 の説明(が本当にkazukiの考えと同じだとして)だと置き換えは実行時だからやっぱり正しくはないか
0798名前は開発中のものです。2010/09/22(水) 00:38:19ID:uXUhUOYT
>>794
>>1の考えを想像してみたんよ
0799名前は開発中のものです。2010/09/22(水) 00:44:17ID:KlyUHZKS
>>794
おかしかったら笑ってもいいんだよ?(^^

うはははは!www

こんな俺みたいに。


てか、笑え。
お前、笑え。
0800名前は開発中のものです。2010/09/22(水) 00:44:53ID:rOzISJN3
>>799
嘲笑ならみんなしてるよ
0801名前は開発中のものです。2010/09/22(水) 00:47:23ID:ZhuFa4Bc
1+1=2 みたいな等式(もしくは不等式) の形の式しか知らなくて、1+1だけでも式なん
だってことを知らずにきたのかな。よくわからんけど

>>799
だいぶ笑わせてもらったけど、ここまで来るとむしろ笑えない
0802名前は開発中のものです。2010/09/22(水) 01:02:48ID:MuuXCIIp
俺釣りに違いないと今まで思ってたが、真性なんだ・・・
0803名前は開発中のものです。2010/09/22(水) 01:04:30ID:16KXMzSp
逆に釣りに見えてきた
0804名前は開発中のものです。2010/09/22(水) 01:13:07ID:uXUhUOYT
後釣り宣言とかしてる辺り真性だと思う
てか、釣りで何ヶ月(最初は動画上げてるだけだったから3ヶ月ぐらいか?)もバカ演じれないよ普通の人なら
0805名前は開発中のものです。2010/09/22(水) 01:24:25ID:0duhZDGS
Kazukiを分析すると、

精神病かもしれない
そうでなければ、

「ボケ老人」だろう、どこの家庭にも居る。
戦後の混乱期に小中学校であまり学んでない。
老人特有の頑固さで協調性が無い、
年長になると見栄張りで、頭を下げて青年達に聞くことが出来ない。
この年代は生き抜くための根性だけはある。
独学で学んで、実験だけで答えを導き出す、かなり時間を使ってるはず。
このような老人は敬遠されて、いっしょに遊んでくれる友が居ない。
だから、若い人と会話できる事が楽しくてしょうがない。

だから、君達が遊んであげるととても喜ばれる。
0806名前は開発中のものです。2010/09/22(水) 01:38:38ID:N6b8LlOZ
このスレ見てると
普段自分が使わないような文法が見られて面白いなぁ
0807名前は開発中のものです。2010/09/22(水) 01:49:08ID:K8CkPXm6
int a = 2;
a += 3;

とか

struct Foo {};
Foo* foo = new Foo;

はどう理解しているのか気になる。
0808名前は開発中のものです。2010/09/22(水) 01:51:00ID:KlyUHZKS
今、帰ってきた。

んじゃ解ったよ。

「右から左=後ろから前」の超解説を今からやります。

文章書くからちょっと待っててね。

多分、超上級者向けだと思う。
0809名前は開発中のものです。2010/09/22(水) 01:53:46ID:uXUhUOYT
そりゃ間違ってんだから誰にも理解出来ないわな
超上級者でもむりだわ
0810名前は開発中のものです。2010/09/22(水) 01:56:38ID:ZhuFa4Bc
間違った考えをいくら頑張って説明しても無駄だっての
そんな無駄な努力止めて、まずは今の解説ページを全削除するべき。
0811名前は開発中のものです。2010/09/22(水) 01:59:38ID:KlyUHZKS
そもそもC言語は何なのかと言うと、
人間が読んで理解できる文法です。

つまり、コンパイラが読める文法のことです。

C言語のコードをそのままコンピュータに渡して、
「これ読んで!」って言っても、
コンピュータは読めません。

CPU「ゴメンなさい・・。泣いてもいいですか?」

となるww


そして、このコンパイラはソースを読むとき、
全ての文字を一文字単位で考えた時、
文章の最後から前に向かって読むのだ。


10進数の7を、2進数にすると「0111」になる。

そして、2進数の最小単位がビットです。

コンピュータは、ビットという小さな器の集合体です。

[ ]←これをビットとする。

10進数の7を二進数にすると[0][1][1][1]←こんな感じに、
各ビットの器に放り込みます。
正確には各器の電圧を変化させています。

つづく
0812名前は開発中のものです。2010/09/22(水) 02:01:16ID:ZhuFa4Bc
たしかに超説明だわ

せめて日本語で書け
0813名前は開発中のものです。2010/09/22(水) 02:04:13ID:KlyUHZKS
10進数の7を2進数に変換した時。

1.[0][1][1][1]

こんな風に一発で変換するのは無理。
なぜなら、コンピュータは一つずつ順番に動いているから。

正しくは、

1.[*][*][*][1]
2.[*][*][1][1]
3.[*][1][1][1]
4.[0][0][0][1]


こんな風に後ろから前に向かって
各ビットの器の電圧を変化させて、
10進数を2進数に変換する。


このように考えた時、
コンピュータは「後ろから前に向かって読んでいる」で考えれば、
すべてのツジツマが合う。

つづく
0814名前は開発中のものです。2010/09/22(水) 02:06:06ID:a9eeuuzq
OKわかった
論理回路勉強して来い
0815名前は開発中のものです。2010/09/22(水) 02:08:42ID:KlyUHZKS
int a = 0;


これをコンパイラが読むときは、

1.;
2.0
3.=
4.a
5.t
6.n
7.i


こんな感じに文章の後ろから読んでいる。

どうして、後ろから読むのかと言うと、
前から読むと文章の最後がどこなのか解らないから。

エクセルのセルを思い浮かべてほしい。。

0 1 2 3 4






こうだよね?
座標、0、0が終了地点です。

このように考えれば、解るよね?
0816名前は開発中のものです。2010/09/22(水) 02:10:08ID:KlyUHZKS
上級者向け超解説終わり。
0817名前は開発中のものです。2010/09/22(水) 02:13:17ID:16KXMzSp
なるほど、kazukiコンパイラではそうなってるんですか
0818名前は開発中のものです。2010/09/22(水) 02:14:39ID:KlyUHZKS
>>813の訂正

1.[*][*][*][1]
2.[*][*][1][1]
3.[*][1][1][1]
4.[0][1][1][1]

以上!
0819名前は開発中のものです。2010/09/22(水) 02:15:35ID:a9eeuuzq
これはコンパイラの話ですか?
CPUの話ですか?
0820名前は開発中のものです。2010/09/22(水) 02:15:50ID:9XaaDgHA
ワロタw

>どうして、後ろから読むのかと言うと、
>前から読むと文章の最後がどこなのか解らないから。

ここがダウト
なんのために 「;」を付けると思ってるんだよw
0821名前は開発中のものです。2010/09/22(水) 02:21:32ID:roNSNMqe
ここまで無知を晒して何が楽しいんだろう
0822名前は開発中のものです。2010/09/22(水) 02:21:56ID:KlyUHZKS
>>820
;は正確には、EOP?だったかな?

ちょっと忘れた。

とにかく、何かの意味なんだよ。


でも、
#define a 0

こんな風に最後に;を入れない場合もある。

;が文章の終了という意味なら、
これを証明することが出来なくなる。

なので、文章の先頭がゴール地点で
座標0に来ると次の行を読むと考えればいい。


なので、後ろから前に向かって読むのだろう。

0823名前は開発中のものです。2010/09/22(水) 02:27:54ID:ZhuFa4Bc
後ろから読むコンパイラww

ビットレベルで下位から計算される(そういう場合も当然ある)ことと、ソースを読む方向が
なんで同レベルで語れるんだ。

つか、プリプロセスの話とコンパイル時の話と実行時の話が一緒くただよな
0824名前は開発中のものです。2010/09/22(水) 02:27:56ID:uXUhUOYT
GCCのソース読んできたら良いと思うよ。
いや、俺も読んだ事無いけど普通にソースの先頭から読み込んでるだろうし
インタプリタじゃ無いんだから読み込み順に処理するわけでも無いし

てかファイルの終端が分からなかったら終端から読むなんで事出来ないっていう
0825名前は開発中のものです。2010/09/22(水) 02:28:54ID:KlyUHZKS
#define A 1
int b = 1;

b=A+b;


この式だけを後ろから分解


1.;
2.b ←ここには1が入る
3.+
4.A
5.=
6.b ←ここには2が入る


各演算子は、それぞれの向きで考える。


+は、左から右
=は、右から左

これで俺が言いたいこと解った?
0826名前は開発中のものです。2010/09/22(水) 02:30:43ID:ZhuFa4Bc
> #define a 0
> ↑
> こんな風に最後に;を入れない場合もある。

そりゃ、それを処理するのはプリプロセッサでコンパイラじゃないからなww

それに、前から読んだとき終わりがわからないなら、後ろから読んだって初めが分からなくなるだけだしwww
0827名前は開発中のものです。2010/09/22(水) 02:31:35ID:uXUhUOYT
てか、コンパイラの動作なんて言語仕様と全く関係無いんだけどな。
コンパイラは最終的に仕様にそった実行ファイルを吐けば中でどううごくかなんて言語側で制限しないから。

0828名前は開発中のものです。2010/09/22(水) 02:32:46ID:a9eeuuzq
どうやって行と行を見分けるん?
見分けられたとして、行の終端から調べるためには終端がどこにあるかわからないと出来なくね?
0829名前は開発中のものです。2010/09/22(水) 02:35:49ID:uXUhUOYT
もしかしてこいつの頭の中ではコンパイラはアセンブラ程度の物なのかもしれない
0830名前は開発中のものです。2010/09/22(水) 02:38:38ID:KlyUHZKS
b=b+(A+b);

これを後ろから読んで分解

1.;
2.) ←関数呼び出しを意味する
3.b
4.+
5.A
6.( ←関数終了を意味する
7.+
8.b
9.=
10.b

このように考えれば、
各演算子の優先順位もキレイに説明出来る。
0831名前は開発中のものです。2010/09/22(水) 02:39:39ID:h9k+fC0i
int main()
{

struct test sttest;

sttest.n = 10;
printf("%d\n", sttest.n);

return 0;
}


struct test{
int n;
};

これが動かないのは何で?
0832名前は開発中のものです。2010/09/22(水) 02:40:24ID:ZhuFa4Bc
関数呼び出し…

( ゚д゚) ・・・
 
(つд⊂)ゴシゴシ
 
(;゚д゚) ・・・
 
(つд⊂)ゴシゴシゴシ
  _, ._
(;゚ Д゚) …!?
0833名前は開発中のものです。2010/09/22(水) 02:41:26ID:uXUhUOYT
まさかの関数登場
0834名前は開発中のものです。2010/09/22(水) 02:41:30ID:jq8AzszG
「この式だけを後ろから分解」ってのが都合が良すぎない?

終端が分からないっていうなら一番最初はソースコードの最後にならないとおかしくね?
行単位でっていうなら

#define A 1 int b=1; b=A+b;

って書かれたら

1.;
2.b ←はい、値が分かりません
0835名前は開発中のものです。2010/09/22(水) 02:41:48ID:a9eeuuzq
もう一回>>280読んでこようか
あとb= (a+b)+b;はどう処理するん?
0836名前は開発中のものです。2010/09/22(水) 02:42:19ID:KlyUHZKS
配列変数を指定するとき、

int a[2]

↑こう書くよね?

これを後ろから分解

1.]
2.2
3.[
4.a
5.t
6.n
7.i

なので、[ ]←これは順位が1位なのだよ
0837名前は開発中のものです。2010/09/22(水) 02:42:52ID:ZhuFa4Bc
#include <stdio.h>

int main()
{
int a, b;

a = 1;
b = 2;

// 「前から読んだら文がどこで終わるかわからない」としたら、「後ろから読んだとき」
printf(
"%d\n",
b
+ a++
); // ここで終わる文がどこから始まるのか、コンパイラはどう判断するの?
return 0;
}
0838名前は開発中のものです。2010/09/22(水) 02:44:18ID:ZhuFa4Bc
>>836
「なので」の前と痕が全くつながってない
0839名前は開発中のものです。2010/09/22(水) 02:45:02ID:KlyUHZKS
ちなみに=代入演算子は優先順位が低いから、
最初の方に書く必要がある。

a = a +1


=は2列目に書いている
優先順位が低いから
0840名前は開発中のものです。2010/09/22(水) 02:45:54ID:KlyUHZKS
どのプログラムもそうなってるよ。
0841名前は開発中のものです。2010/09/22(水) 02:47:41ID:ZhuFa4Bc
> ちなみに=代入演算子は優先順位が低いから、
> 最初の方に書く必要がある。

その理屈だと、優先順位の低い = 演算子は必ず 優先順位の高い [] より前に書かなきゃいけないってことでいいんだよね!
0842名前は開発中のものです。2010/09/22(水) 02:48:47ID:uXUhUOYT
配列要素に代入出来ないのか
キツイな
0843名前は開発中のものです。2010/09/22(水) 02:48:48ID:h9k+fC0i

a[1] = b[2];
0844名前は開発中のものです。2010/09/22(水) 02:51:27ID:KlyUHZKS
>>835
b= (a+b)+b;

これは、こんな感じに後ろから前に分解して読む

1.;
2.b
3.+ ←コレが3位
4.) ←コレが1位
5.b
6.+ ←コレが2位
7.a
8.( ←1位ここまで
9.= ← コレが4位
10.b ← コレが5位
0845名前は開発中のものです。2010/09/22(水) 02:51:40ID:ZhuFa4Bc
そうか…

今まで

 x * y + 2

とか書いてたけど、これからは優先順位の低い + を前にして

 2 + x * y

って書かなきゃいけないな
0846名前は開発中のものです。2010/09/22(水) 02:52:22ID:uXUhUOYT
優先順位と書く位置は全く関係無い
というか、順序を制限しないための優先順位なんだけど
例えば算数で
1+2×3と
2×3+1が同じになるのは優先順位のおかげ
0847名前は開発中のものです。2010/09/22(水) 02:54:00ID:KlyUHZKS
だ か ら 後ろから読むの(^^
0848名前は開発中のものです。2010/09/22(水) 02:56:27ID:uXUhUOYT
想像以上にバカだった
0849名前は開発中のものです。2010/09/22(水) 02:57:18ID:a9eeuuzq
>>844
もっと詳しく説明よろ
0850名前は開発中のものです。2010/09/22(水) 02:59:01ID:uXUhUOYT
取り合えず>>743がわかりやすいから何度も読め
それでも後ろから読む必要があると思うならもう知らん
0851名前は開発中のものです。2010/09/22(水) 02:59:11ID:jq8AzszG
int a = 1 ;
if ( (a=a+3)>2 || (a=a-5)>0 ){}

この条件文は通る?
この条件文を抜けたあとのaは?
後ろから読んで説明してみて
0852名前は開発中のものです。2010/09/22(水) 03:00:17ID:h9k+fC0i
文ごとに後ろから読むの?
ソース全部後ろから読むの?
0853名前は開発中のものです。2010/09/22(水) 03:01:06ID:UQTbKj7R
>>852
そこは答えたく無いらしいよ?w
0854名前は開発中のものです。2010/09/22(水) 03:01:30ID:KlyUHZKS
>>851
めんどくさいからもう分解しないけど。

if ( (a=a+3)>2 || (a=a-5)>0 ){}

これを脳内で後ろから前に読んでください。

それを俺が書いた順位表で考えて
その順番に計算してください。

この場合、||←(理論演算子)が最後から二番目の順位です。
0855名前は開発中のものです。2010/09/22(水) 03:02:04ID:uXUhUOYT
どっかに演算順序を超わかりやすく書いてくれたレスがあったはず
0856名前は開発中のものです。2010/09/22(水) 03:02:19ID:ZhuFa4Bc
>>847

なにが「だ か ら」なのか全く不明
改めて確認するが、

 ・優先順位の高い [] 演算子は低い = の前に書いてはいけない
 ・どのプログラムもそう ([] が = より前に書かれてるようなプログラムはない)

でいいんだよな?
0857名前は開発中のものです。2010/09/22(水) 03:03:28ID:KlyUHZKS
ソースは1行目から下に向かって読む。
列は、後ろから文章の先頭(座標0)に向かって読む

だが、実行する場合は、
mainから実行
0858名前は開発中のものです。2010/09/22(水) 03:04:48ID:UQTbKj7R
>>857
じゃあ、>>834に答えて
0859名前は開発中のものです。2010/09/22(水) 03:05:45ID:KlyUHZKS
あ。実行する前にグローバル変数とかインクルード読んでるけどね。

それを飛ばしての話です。
0860名前は開発中のものです。2010/09/22(水) 03:06:12ID:h9k+fC0i
=を関数で考えると
int equal(int &a,int b);
見たいになるから左辺の正体は値じゃなくて参照って考えるといいんじゃね?
0861名前は開発中のものです。2010/09/22(水) 03:07:36ID:uXUhUOYT
あった>>476
この説明見た上で後ろから読む必要を説明してくれ
0862名前は開発中のものです。2010/09/22(水) 03:10:03ID:KlyUHZKS
>>845
いや、違う。。

x * y + 2

でもいい。

後ろから分解

1.2
2.+
3.y
4.*
5.x

こう考えて、+と*の順位はどっちが上ですか?

俺のサイトの表を見てください。

*は3位で+は4位です。

なので、その順番で計算する。
0863名前は開発中のものです。2010/09/22(水) 03:10:15ID:uXUhUOYT
前から読むと文末が分からないのに
文末から読めるって発想がスゴイな
0864名前は開発中のものです。2010/09/22(水) 03:11:04ID:ZhuFa4Bc
> ソースは1行目から下に向かって読む。
> 列は、後ろから文章の先頭(座標0)に向かって読む

じゃあ

a = a
*
(b + 10);

はどう読まれるの?
0865名前は開発中のものです。2010/09/22(水) 03:12:45ID:KlyUHZKS
ちなみにこれはコンパイラの理解です。

これらの文章法則をコンパイラは、
機械語に変換して、

そして、ようやく本来のコードになる。

機械語を直接話せるなら、
コンピュータにとって、もっといいコードになる。

アセンブラとか。
0866名前は開発中のものです。2010/09/22(水) 03:13:01ID:uXUhUOYT
>>862
優先順位考えるんだから
前から読んでも問題無いよね
0867名前は開発中のものです。2010/09/22(水) 03:13:07ID:UQTbKj7R
>>859
最初に変数を読んで後は後ろから分解するんだよね?

int a = 1, b = 2 ; a = a+b ; a = 10 ; b = 11 ; a = a+b ;

あれ?
最初の式と後ろの式の結果がいれかわっちゃったw
0868名前は開発中のものです。2010/09/22(水) 03:14:27ID:uXUhUOYT
>>865
前にもレスしたけど
コンパイラがどう読むか

言語仕様としてどの順序で演算するか
は全く関係無い
0869名前は開発中のものです。2010/09/22(水) 03:15:26ID:ZhuFa4Bc
>>862
代入演算子は優先順位が低いから最初の方に書かなければいけないって言ったのはお前じゃん
なのになんで

  優先順位の低い + は優先順位の高い * より前に書かなければならない

にならないの?
0870名前は開発中のものです。2010/09/22(水) 03:16:47ID:ZhuFa4Bc
あと>>864にも答えてね
0871名前は開発中のものです。2010/09/22(水) 03:18:56ID:KlyUHZKS
#define A 1

これを分解

1.1
2.A
3.e
4.n
5.i
6.f
7.e
8.d ←ここまで読んで、ようやく「define」であることを理解
9.# ←ここまで読んでようやく「呼び出すんだね?ラジャー!」

となって、マクロを使う。
0872名前は開発中のものです。2010/09/22(水) 03:20:45ID:KlyUHZKS
ああ。正確には、

1.1
2.空白(スペース)
3.A
4.空白(スペース)
3.e
4.n
5.i
6.f
7.e
8.d ←ここまで読んで、ようやく「define」であることを理解
9.# ←ここまで読んでようやく「呼び出すんだね?ラジャー!」

こうだね?

なので、1はAに格納される
0873名前は開発中のものです。2010/09/22(水) 03:21:52ID:uXUhUOYT
ダメだこいつプリプロセッサもやっぱり理解してない
0874名前は開発中のものです。2010/09/22(水) 03:22:15ID:KlyUHZKS
訂正

1.1
2.空白(スペース)
3.A
4.空白(スペース)
5.e
6.n
7.i
8.f
9.e
10.d ←ここまで読んで、ようやく「define」であることを理解
11.# ←ここまで読んでようやく「呼び出すんだね?ラジャー!」


何度も失礼・・。
0875名前は開発中のものです。2010/09/22(水) 03:23:33ID:a9eeuuzq
>>839をふまえた上でint型配列の変数に値を代入したいときはどうすれば良いか答えてくれない?
0876名前は開発中のものです。2010/09/22(水) 03:24:58ID:ZhuFa4Bc
>>871-872

# で始まる行であることをまず認識しないとプリプロセッサが動けないんだが
0877名前は開発中のものです。2010/09/22(水) 03:26:08ID:ZhuFa4Bc
>>875
その指摘は見えないようになってるらしい
0878名前は開発中のものです。2010/09/22(水) 03:26:19ID:8Kfyr4O9
私の高校の頃の数学教師の言葉
「数学の式や関数って、プログラムで使う式や関数とは別物だから混同しないほうがいいよw
同じなのは見た目だけw」
0879名前は開発中のものです。2010/09/22(水) 03:26:49ID:uXUhUOYT
てか取り合えず>>476を読めよ
まさか読んだ上で言ってるの?
0880名前は開発中のものです。2010/09/22(水) 03:29:56ID:8Kfyr4O9
当時の自分は「は? 数学でもC++でも別段困ってないんだけど」ってスルーしてたけど、
カズキくんみたいに自分の知ってることだけでC++を理解しようとすると勘違いするから
前もって言ってくれてたのね
0881名前は開発中のものです。2010/09/22(水) 03:31:18ID:ZhuFa4Bc
字句解析とか構文解析なんて言葉は見たこともないんだろうな
ごく簡単なものでいいから一度でもパーサを書いてみてから語って欲しいものだ
0882名前は開発中のものです。2010/09/22(水) 03:33:46ID:KlyUHZKS
では、これにて後ろから前は終了!!


じゃあ、寝るわ。
0883名前は開発中のものです。2010/09/22(水) 03:34:10ID:jq8AzszG
#define A(a) {a=a+1;a=2;a=a+3;}

はい、説明して!
0884名前は開発中のものです。2010/09/22(水) 03:34:38ID:uXUhUOYT
説明出来なくなると逃げる
いつも通りだね
0885名前は開発中のものです。2010/09/22(水) 03:35:15ID:ZhuFa4Bc
都合の悪い質問は全て無視して終了宣言か
0886名前は開発中のものです。2010/09/22(水) 03:35:39ID:h9k+fC0i
#define TEN 10

1.# ←プリプロセスっすね 準備するっす
2.d
3.e
4.f
5.i
6.n
7.e 
8. ←defineっすね?ぱねぇww使いすぎ
9.T ←マクロ名っすか "T"
10,E ←Eっすね "TE"
11. N ← N "TEN"次は?
12.  ←途切れたんで"TEN"でいいんすね
13. 1 ←代入は"1"・・・と
14.0 ←0、後は? "10"
15.\n ←おk、"TEN"って識別子を"10"に変えるんすね、覚えとくっす

僕のdefineちゃんはこんな感じ
0887名前は開発中のものです。2010/09/22(水) 03:37:02ID:uXUhUOYT
>>886
どっちかっていうとプリプロセッサちゃん
0888名前は開発中のものです。2010/09/22(水) 03:38:46ID:KlyUHZKS
>>883
これの場合は、;を書いてるから
そこで一区切りになって考えます。

たしか;はそういう意味だったはず。

つまり、こうだね?

#define A(a) {a=a+1;a=2;a=a+3;}

{a=a+1;a=2;a=a+3;}
 ↑
この部分だけ考えるね?

a=a+1;
a=2;
a=a+3;


中身をこんな風に分解。

これをそれぞれ後ろから読む
0889名前は開発中のものです。2010/09/22(水) 03:39:09ID:h7AWls07
このスレも後ろから読むと理解できます。
一番後ろはきっと5000スレくらいなので気長に待ってください。
0890名前は開発中のものです。2010/09/22(水) 03:40:15ID:ZhuFa4Bc
起きてからでいいから

#include <stdio.h>
int main(){ int a = 3; int b = 2; a = a * (b + 10); printf("%d\n", a); return 0; }

↑のプログラムがどう読まれるか解説してね。あと↓のも

#include <stdio.h>
int
main(){
int
a
=
3;
int
b
=
2;
a
=
a
*
(b
+
10);
printf("%d\n",
a);
return
0;
}
0891名前は開発中のものです。2010/09/22(水) 03:40:53ID:KlyUHZKS
正確にはこうか。

1.a=a+3;
2.a=2;
3.a=a+1;

順番を間違った(^^;
0892名前は開発中のものです。2010/09/22(水) 03:42:46ID:ZhuFa4Bc
>>888
まちがい。プリプロセッサは ; を特別扱いしたりしない
0893名前は開発中のものです。2010/09/22(水) 03:43:58ID:KlyUHZKS
>>890
絶対に嫌w

わざと読みにくく書いて困らせようとしているのが、
その文章から読み取れるから。

自分で考えろ。
0894名前は開発中のものです。2010/09/22(水) 03:45:00ID:uXUhUOYT
読めないのか
0895名前は開発中のものです。2010/09/22(水) 03:45:00ID:h9k+fC0i
>>891
ならa=0で入れたらaは3になるんだね?
0896名前は開発中のものです。2010/09/22(水) 03:46:02ID:9XaaDgHA
>>891
じゃあ、

int a = 1 ;
A(a)

のあとのaは3ですね
マジパネェっす
0897名前は開発中のものです。2010/09/22(水) 03:46:16ID:ZhuFa4Bc
>>890の二つのプログラムが同じものだってことは理解できる?
0898名前は開発中のものです。2010/09/22(水) 03:46:46ID:uXUhUOYT
しかしこんなのが30代なんだよな
周りの人が可哀想で泣けて来るわ
0899名前は開発中のものです。2010/09/22(水) 03:48:35ID:uXUhUOYT
「当然知ってたし
そんなの初歩だよ」
とか言い出すと予想
0900名前は開発中のものです。2010/09/22(水) 03:48:41ID:a9eeuuzq
とりあえず配列への代入について答えてもらおうか
0901名前は開発中のものです。2010/09/22(水) 03:49:44ID:KlyUHZKS
>>896
違う。

初期化してるから毎回変わる。


1.a=a+1;
2.a=2;
3.a=a+3;

1.は1
2.は2
3.は何かな?

これぐらいは解るよね?
0902名前は開発中のものです。2010/09/22(水) 03:50:34ID:uXUhUOYT
えっ
0903名前は開発中のものです。2010/09/22(水) 03:52:42ID:UQTbKj7R
>>901
前から読んでるじゃんw
>>891といってることが違いますよ?
0904名前は開発中のものです。2010/09/22(水) 03:54:46ID:KlyUHZKS
あれ?

なんか、ややこしくなったけど。

とにかく、

#define A(a) {a=a+1;a=2;a=a+3;}


この場合は、後ろの}←から読む。

改行しようが何しようが一緒!


{ }で囲まれたブロックを一つの関数として考えていきます。
0905名前は開発中のものです。2010/09/22(水) 03:55:49ID:ZhuFa4Bc
>>893

俺は別に考える必要はないよ。この二つのプログラムがコンパイラでどう処理されるか
は (もちろん概要だが) 知ってるから。

キミはその「後ろから前」説を

  「コンパイラはプログラムを後ろから読むんだ!だって前から読んだらどこで終わったらいいかわからないじゃないか!」

ってことを根拠にしてたんだよね。

でも「;」が区切りになることを認めちゃったらその根拠が崩れちゃうんじゃないの?
0906名前は開発中のものです。2010/09/22(水) 03:57:03ID:KlyUHZKS
ちなみに{ }の中は、→こっち方向で読むので、

a=a+1

から読む。

失礼w

上のはミスです
0907名前は開発中のものです。2010/09/22(水) 03:57:15ID:h9k+fC0i
>>904
とにかくじゃないよおおおおおお
>>891
の順番なら3が出るはずなのに
実際は5が出てるんだよおおおおおおおお

期待した値と違う結果が出てコンパイラがエラーや警告で教えてくれないんだよ!??
最悪のエラーじゃないか!!
0908名前は開発中のものです。2010/09/22(水) 03:58:02ID:UQTbKj7R
>>904
分かりました{}をとりましょう

#define A(a)a=a+1;a=2;a=a+3;

エラーは出ませんよ?
改行したら出るけどなw
0909名前は開発中のものです。2010/09/22(水) 03:58:34ID:KlyUHZKS
>>891は間違えです。
失礼しました。
0910名前は開発中のものです。2010/09/22(水) 03:59:19ID:uXUhUOYT
>>906
なぜ{}の中だけ前から処理するの?
普通に考えて全部前から処理していってなにが問題なの?
0911名前は開発中のものです。2010/09/22(水) 04:00:26ID:uXUhUOYT
てか、プリプロセッサとコンパイラ
コンパイルと、実行
は分けて考えろよ
0912名前は開発中のものです。2010/09/22(水) 04:01:34ID:uXUhUOYT
もっと単純に
プリプロセスと、コンパイルと、実行
で良いか
0913名前は開発中のものです。2010/09/22(水) 04:02:54ID:ZhuFa4Bc
> { }で囲まれたブロックを一つの関数として考えていきます。

ふーん、じゃ、とっておき

#include <stdio.h>

#define BEGIN {
#define END ;}
#define FOO(x, y) {int a = x int b = y
#define BAR(x) x; }

int main()
BEGIN
FOO(3;, 2;)
a = a * (b + 10);
BAR(printf("%d\n", a))
END

これでもちゃんと動くれっきとしたCプログラムだけど、これはどんなふうに読まれる?
0914名前は開発中のものです。2010/09/22(水) 04:04:16ID:KlyUHZKS
訂正

#define A(a) {a=a+1;a=2;a=a+3;}


これを分解

最後の}から読み始めて、

a=a+1;
a=2;
a=a+3;

上記のようにまず、三つに分解する。

これを、上から順番に、実際は左から右に読んで、
最終地点の;をスタートにして、前に向かって読む。

終わったら次の行を読む。

この場合、{ }内は、
{ ←これが0地点
0915名前は開発中のものです。2010/09/22(水) 04:06:08ID:9XaaDgHA
>>914
>>908
0916名前は開発中のものです。2010/09/22(水) 04:06:32ID:ZhuFa4Bc
>>914
なんでそんなややこしいことしなきゃならんの? 前から読めばいいのに

それにプリプロセスとコンパイルは違うって皆が言ってるの、耳に入らないの?
0917名前は開発中のものです。2010/09/22(水) 04:07:40ID:KlyUHZKS
>>910
だから向きだよ。
演算子は、それぞれの考える向きが決まっている。

検索すれば出てくると思うけど。
0918名前は開発中のものです。2010/09/22(水) 04:08:17ID:h9k+fC0i
>>915
それも

最後から読み始めて、

a=a+1;
a=2;
a=a+3;

のように分解する
で切り抜けられる気がしてきた
0919名前は開発中のものです。2010/09/22(水) 04:09:06ID:roNSNMqe
int a[10];
a[0]=0;
この簡単な式の説明して見てよ
0920名前は開発中のものです。2010/09/22(水) 04:10:13ID:ZhuFa4Bc
>>918

#define A(a, x) a=a+1 x a=2 x a=a+3 x

A(a, ;) で展開すればおk
0921名前は開発中のものです。2010/09/22(水) 04:10:41ID:h9k+fC0i
>>917
演算子ごとに向きも優先順位も決まってるなら
読む順序も向きも演算子ごとに遵守してれば
前からも後ろからも関係ないんじゃないの
0922名前は開発中のものです。2010/09/22(水) 04:16:30ID:KlyUHZKS
{a=a+1;a=2;a=a+3;}


つまりこの場合は、

1.← {a=a+1;a=2;a=a+3;}←最後の}から前に向かって読んで
2.→ {a=a+1;a=2;a=a+3;}←の中身(1発目)右向きに読んでから
3.← a=a+1; ←ここで左向きに読む
4.→ {a=a+1;a=2;a=a+3;}←の中身(2発目)右向きに読んでから
5.← a=2; ←ここで左向きに読む
6.→ {a=a+1;a=2;a=a+3;}←の中身(3発目)右向きに読んでから
7.← a=a+3; ←ここで左向きに読む

の順序か。

矢印は考える向きです。

ああ、ややこしいw
0923名前は開発中のものです。2010/09/22(水) 04:20:13ID:MuuXCIIp
ややこしいなら素直に頭から読めよw
0924名前は開発中のものです。2010/09/22(水) 04:21:37ID:ZhuFa4Bc
「後ろから前」説を守るためだけにそこまでややこしいことを考えるのか

しかも自説についてなんの根拠にもなってない (後ろから前でもなんとか読める、と
言ってるだけで、後ろからじゃないと読めないことの根拠になってない)

なんという徒労ww
0925名前は開発中のものです。2010/09/22(水) 04:21:49ID:MuuXCIIp
バイナリツリーで構文木作ったら間違いを認めそうだが、、いや解らないかw
0926名前は開発中のものです。2010/09/22(水) 04:22:32ID:ZhuFa4Bc
で、そこまでややこしいことを考えても >>913 で崩壊するのに
0927名前は開発中のものです。2010/09/22(水) 04:22:48ID:KlyUHZKS
>>923
ややこしいから。

改行して人間に解りやすいコードにする。


#define A(a)
{
a=a+1;
a=2;
a=a+3;
}

コンパイルは機械だから、
人間理解向きにしなくてもいいけど。。。
0928名前は開発中のものです。2010/09/22(水) 04:27:33ID:ZhuFa4Bc
>>913のプログラムがどう読まれてどう動くのか、考えておいてね。これ宿題
0929名前は開発中のものです。2010/09/22(水) 04:31:00ID:MuuXCIIp
  =
 /\
a   +
   /\
  a   1


>>927
根本的に間違ってる
頭から「読みながら」「優先順位に沿って」上の構文木をコンパイラが生成する
基本的に最適化の処理のために、読むのと処理するのは分けられている

ってことをみんなが言ってるのに解らないんだろーなーwww
0930名前は開発中のものです。2010/09/22(水) 04:32:39ID:MuuXCIIp
>>927 じゃなくて >>922
0931名前は開発中のものです。2010/09/22(水) 04:36:38ID:ZhuFa4Bc
あとは、そうだな

#include <stdio.h>

#define A 10 + 1

int main()
{
printf("%d\n", A);
printf("%d\n", A + 1);
printf("%d\n", A * 10);
return 0;
}

このプログラムで

 ・どんな結果が出るか予想してみる
 ・実行して結果を見る
 ・なぜそういう結果になったか説明を考える

これも宿題ね
0932名前は開発中のものです。2010/09/22(水) 04:46:23ID:N6b8LlOZ
>>1よ、ちょっとしたコードを試したいなら
ここが便利だぞ☆
http://codepad.org/
恥かく前に試せよ?
0933名前は開発中のものです。2010/09/22(水) 04:53:50ID:KlyUHZKS
ややこしいのでまとめる。

#define A(a) {a=a+1;a=2;a=a+3;}

1.}を最初に読む
2.{を探しにいく
3.{ }の中に入ったら右向きに読む
4.;を探しに行く
5.;を見つけたら、元の左向きに戻る
6.終わったら{ }内のルールに戻って右向きになり次の;を探す
7.;を見つけたら、またそこから左向きに戻る
8.{ }内は全部読むので、最後のは別に;はいらない(入れてもいい)
0934名前は開発中のものです。2010/09/22(水) 04:57:18ID:N6b8LlOZ
てかさ、>>1は自説に自信満々みたいだけど
C言語のプリプロセッサとかコンパイラでそういう順序で処理をしてるってのは
どこから知識を得たの?
0935名前は開発中のものです。2010/09/22(水) 05:01:15ID:KlyUHZKS
#include <stdio.h>

#define A 10 + 1

int main()
{
printf("%d\n", A);
printf("%d\n", A + 1);
printf("%d\n", A * 10);
return 0;
}


1.>を読む
2.<を探しに行く
3.中に入ったら最後に行く
4.hを読む
5..を読む(ここでhファイルであることを理解)
6.oを読む
7.iを読む
8.dを読む
9.tを読む
10.sを読む(ここでファイル名「stdio」が判明
0936名前は開発中のものです。2010/09/22(水) 05:08:22ID:KlyUHZKS
#define A 10 + 1


これも後ろから読んで理解。

int main()
{
printf("%d\n", A);
printf("%d\n", A + 1);
printf("%d\n", A * 10);
return 0;
}


これは

int main(){printf("%d\n", A);printf("%d\n", A + 1);printf("%d\n", A * 10);return 0;}


こんな風に一行にして読む。

1.}を最初に読む
2.{を探しに行く
3.{ }の中に入ると右向きになり、最初の;を探す
4.;を見つけたらそこから左向きに読む
5.全部読んだら右向きに戻り、次の;を探す
6.それを繰り返して、printfは終了
7.リターンの0を読む
8.n r u t e r の順に逆に読んで、returnであることを理解
9.終了
0937名前は開発中のものです。2010/09/22(水) 05:11:46ID:MuuXCIIp
なんという非効率なスキャンプログラムwww
0938名前は開発中のものです。2010/09/22(水) 05:18:19ID:KlyUHZKS
>>931
コードの中身の意味は、

#define A 10 + 1


ここで、Aは「10+1」になる。

printf("%d\n", A);
printf("%d\n", A + 1);
printf("%d\n", A * 10);


よってここは、

1.printf("%d\n", 10+1);
2.printf("%d\n", 10+1+ 1);
3.printf("%d\n", 10+1 * 10);


こんな風になる。

公式サイトで散々解説していた内容。

1.は、11が表示
2.は、12が表示
3.は、+よりも*が先に計算され、10+10になり、20になる。


宿題にもなりません。
全部、公式サイトで解説している内容。
0939名前は開発中のものです。2010/09/22(水) 05:29:57ID:ZhuFa4Bc
>>913は?
0940名前は開発中のものです。2010/09/22(水) 05:37:43ID:ZhuFa4Bc
> int main(){printf("%d\n", A);printf("%d\n", A + 1);printf("%d\n", A * 10);return 0;}
>
> ↑
> こんな風に一行にして読む。

なんで?

> 1.}を最初に読む
(略)
> 9.終了

なんでそんなややこしいことするの? 普通に前から読んだらいいじゃん。

 「前から読んだらどこで終わるかわからない」

って説明は「;」を区切りだと認めた時点で崩れてるよね。

何度も言うけど、キミの説明は、

 「こうやって後ろから読むんだ」

と言ってるだけで、l「後ろから読む必要がある」ことの説明には全くなってないんだよね。

それに言ってることがコロコロ変わってるよね。

最初は

 「ファイルは最初の行から一行ずつ読んで、各行それぞれは右から左に読む」

って言ってなかった? なんで複数行をまとめて後ろから読む事になっちゃったの?
0941名前は開発中のものです。2010/09/22(水) 05:41:29ID:ZhuFa4Bc
例えば>>913

#define BEGIN {
#define END ;}

はどう読まれるの? {から} の中身を一行にして

#define BEGIN {#define END ;}

にして後ろから読むのかい?
0942名前は開発中のものです。2010/09/22(水) 05:48:01ID:KlyUHZKS
一度、コマンドプロンプトを表示してご覧よ。

「プログラム」の「アクセサリ」の中にあります。
昔は、この黒い画面が当たり前だったのですが、

そこに

C:\Users\owner>


こんな風に表示されているはずです。

一番右側が現在地点で、
一番左側がゴール地点、つまりそれより先はない地点です。

そこで「dir」を入力して、enterキーを叩いてください。

なんか出てきます。

それもそういう構造になっています。


なので、コンピュータは右から左に向かって考えています。
0943名前は開発中のものです。2010/09/22(水) 05:48:55ID:h9k+fC0i
>>938
defineで確保されたAのメモリの中身はどうなってんの?
0944名前は開発中のものです。2010/09/22(水) 05:55:50ID:MuuXCIIp
>>942
文字を入力したら左から右に画面に表示されるよね?
右から左に向かって考えるなら、なぜ右から左に入力しないの?
0945名前は開発中のものです。2010/09/22(水) 05:58:45ID:5x8WBkL6
C言語等の話してて何得意げに「コマンドプロンプト」とか言っちゃってるの?
このスレでcmd知らない人は稀だと思うんだけど

もしかして、初心者がそのトンでも理論を理解出来なくて
自分に質問しているとか思ってるの?

ありえん(笑)
0946名前は開発中のものです。2010/09/22(水) 06:30:37ID:ZhuFa4Bc
> 一番右側が現在地点で、
> 一番左側がゴール地点、つまりそれより先はない地点です。

はぁ? 馬鹿だろお前?

単に木構造の「根」を先に表示する形式になってるだけ。ドメイン名とかは逆に
「枝」→「根」の順になってる。

で、例えば c:\User\owner ってパス名を示されても、いきなりそのディレクトリの情報が
ディスクのどこにあるのかはわからない。

 ・まずc:のルートディレクトリを読んで、その中の User を見つける
 ・見つけた User の情報から User のディレクトリがディスクのどこにあるのかがわかる
 ・User ディレクトリを読んで、owner を見つける
 ・…

という順番でc:\User\ownerにたどり着くんだよ。だから話は全く逆

コマンドプロンプトを開いたときに特定のディレクトリに既に移ってるのは、既にそこに
移動した状態でプロンプトが開くようになってるから。

> なので、コンピュータは右から左に向かって考えています。

パス名については「根」→「枝」の順になってるってだけで、それが右→左の順ってこと
にはならないし、ましてそれが「コンピューター全般」の話になんかならん。

デタラメにもほどがある
0947名前は開発中のものです。2010/09/22(水) 06:50:11ID:VAUtS0z/
Cの代入演算子の使い方は必ずしも「数学とかけ離れた」ようなものではなくて、もちろん
数学における等号とは意味が違うけども、単にこの使い方は算数ではしないだけなんだけど…

y=x^2+2x+1; って書いたら

・Cでは変数yに式x^2+2x+1が代入される
・数学ではyとxの関係が定義される

じゃない。この数学的使い方だけを抜き出したのがCにおける代入演算子なんだよ。
数学では"="が代入と等号の両方の機能を持っていると考えれば、x=x+1という書き方を
Cでしてもいい理由が分かるかな。

http://ja.wikipedia.org/wiki/%E8%87%AA%E5%B7%B1%E6%84%9B%E6%80%A7%E4%BA%BA%E6%A0%BC%E9%9A%9C%E5%AE%B3
0948名前は開発中のものです。2010/09/22(水) 07:22:39ID:uXUhUOYT
寝て起きたらどんどんややこしい事してやがるのw
>>936
とか素直に前から読むのの二倍走査してるし
流石に無理があるって気づかないのかねぇ
0949名前は開発中のものです。2010/09/22(水) 07:33:44ID:VAUtS0z/
優先順位が人と違うんだよ
事実はどうあれ自分が正しいんだろう
0950名前は開発中のものです。2010/09/22(水) 07:37:04ID:uXUhUOYT
ていうかこの後ろから前に読むってのの「読む」の主語は何なんだろう
コンパイラならプログラムする上で全く関係無いし
(例え後ろから前に読む変態的なコンパイラがあったとしても、ソースと出力は変わらない)
人が読むならどう考えても前から読む方が楽だし
実行ファイルになった上でCPUが、なら
そんな事最適化やら何やらされまくってソースの書き順なんて意味をなさないし

言語仕様として処理が後ろから前に「進む」のは
>>936で無理して前から実行される様にしてるから分かってると思うが、間違ってる。
0951名前は開発中のものです。2010/09/22(水) 07:48:49ID:ij0YiTqO
寝てる間に面白い流れになってたじゃん
参加出来なくて残念
0952名前は開発中のものです。2010/09/22(水) 08:28:20ID:ZhuFa4Bc
それにしてもいつになったらプリプロセッサとコンパイラの区別がつくんだろうな
0953名前は開発中のものです。2010/09/22(水) 08:30:39ID:VAUtS0z/
主が間違いを認めたことはないんじゃないかな
だいたい「ミス」で通してる
0954名前は開発中のものです。2010/09/22(水) 09:02:54ID:cPiQEDdY
ミスって間違いの事だけどね。
0955名前は開発中のものです。2010/09/22(水) 09:10:56ID:uXUhUOYT
単なるミスと理解の間違いなんて簡単に見分けられるのにな
>>1の場合はミスじゃなくて理解の間違い
0956名前は開発中のものです。2010/09/22(水) 10:11:39ID:ECFrVm3B
Kazuki 様

貴方のサイトでC言語のプリプロセッサの解説をして頂け
ないでしょうか? ぜひお願いいたします。

C言語を学ぶうえで、プリプロセッサの理解は避けて通れ
ません。ぜひ、バKazuki様の分かり易い解説をお願いいた
します。
0957名前は開発中のものです。2010/09/22(水) 10:12:50ID:ng3sPQSM
1つの間違いを1スレ以上に渡って説明しても理解しない、か
解説の間違いを全部説明しようとすると何スレいるのやらw
0958名前は開発中のものです。2010/09/22(水) 10:23:35ID:VAUtS0z/
× 解説の間違いを全部説明しようとすると何スレいるのやらw
○ 主が間違いを犯すことを理解させようとすると何スレいるのやらw
0959名前は開発中のものです。2010/09/22(水) 10:42:29ID:go2dVt0W
もう無理だよ。
根本的な所から理解できてないし
理解しようとしないんだもん。

むしろ自分で奇天烈理論展開して正当化しちゃうとか笑うしかないw
0960名前は開発中のものです。2010/09/22(水) 11:28:25ID:VAUtS0z/
事実は二の次三の次、自分の成功体験が第一
0961名前は開発中のものです。2010/09/22(水) 13:18:18ID:2NPM2eme
>>854
やっぱり「 理 論 」演算子って書いてるじゃないか
0962名前は開発中のものです。2010/09/22(水) 13:49:46ID:VAUtS0z/
間違いを認めると死んじゃうんだろ
理論はtheory
論理はlogic
気づいても現実との不整合があったときは自己が優先
0963名前は開発中のものです。2010/09/22(水) 15:37:28ID:KlyUHZKS
>>946
いや。だから、

一番右が現在で
一番左が過去です。

現在から過去に向かって読むとき、
右から左に向かって読む。

なので、一番左が0地点である。

C:\Users\owner>


int a = 0;

C言語の文法も一番右が現在で、
一番左が過去。

現在から過去に向かって読むので、
右から左・・後ろから前になる。

コンパイラがコードを読むは、
時が動いています。

解りやすくジョジョで例えると、
コードを書く時点では、DIOが時を止めている。
そして、読む時点になると、「そして、時が動き出す・・」ってなって、
現在をスタート地点、過去をゴール地点に定めて、
そこに向かって読むから、右から左になる。
0964名前は開発中のものです。2010/09/22(水) 15:40:40ID:ECFrVm3B
ずいぶん活発なスレですね。

ゲームの完成が楽しみです。
0965名前は開発中のものです。2010/09/22(水) 15:43:21ID:kfs4f4gp
したらば、これはどうなる?

c=1+2*3;
0966名前は開発中のものです。2010/09/22(水) 15:43:38ID:KlyUHZKS
■←これをカーソルとする

C:\Users\owner>■

■は↑の場所から、←左にむかって読む。
なので、行の0列目が、ゴール地点。

なのでどこが文章の終わりなのかが、
コンピュータは理解できる。


int a = 0;■


これもカーソルはあの場所から、←左に向かってよむ。
0967名前は開発中のものです。2010/09/22(水) 15:47:06ID:MuuXCIIp
>>963
>>966

素朴な質問だけど、初心者のためを思って独自に工夫して説明してるの?
それとも、コンピュータ内部でそういう動きをしているから、その説明をしてるの?

どっち?
0968名前は開発中のものです。2010/09/22(水) 15:47:30ID:ij0YiTqO
>>966
面白いギャグですね。今度友達に使ってみます。
0969名前は開発中のものです。2010/09/22(水) 15:50:43ID:KlyUHZKS
c=1+2*3;

1.;
2.3
3.*
4.2
5.+
6.1
7.=
8.c


こんな感じに後ろから読んで
一覧にする。

この中で一番優先順位の引くのはどれ?
とコンピュータが考えた時、=が一番低いと判断し、
7.の=と8.のcを後回しに考えるように判断。

行の最後まで読んだら、
次に今度は逆に読む。

1.c
2.=
3.1
4.+
5.2
6.*
7.3
8.;
0970名前は開発中のものです。2010/09/22(水) 15:52:08ID:ij0YiTqO
>>969
もういいよ、見てて悲しいから…
誰にだって誤解はあるんだから、もう諦めてよ。
0971名前は開発中のものです。2010/09/22(水) 15:52:51ID:BJ6LqzHu
>>966
C言語の勉強し直そうよ。

ネット上でも一から説明してあるところ結構あるよ。
ttp://qurl.com/4jrvj
0972名前は開発中のものです。2010/09/22(水) 15:55:27ID:KlyUHZKS
1.c
2.=
3.1
4.+
5.2
6.*
7.3
8.;

後ろから前に読んで
=が理解できたら、
今度は、前から後ろに向かって読み。

今度は優先順位の一番高いのはどれ?と
コンピュータは考える。

*が一位
+が二位

なので、6.を先に計算してから、
4.を計算する。

各演算子には、「左の値を右の値に」という意味があるので
2×3をやってから、1+6をやる。
0973名前は開発中のものです。2010/09/22(水) 15:57:02ID:VAUtS0z/
>>972
a=
a
+b;

こういうCソースの一部はどう解釈されるの?
0974名前は開発中のものです。2010/09/22(水) 15:58:43ID:ECFrVm3B
C言語では、文字列はNULL終端で、NULLのある場所は前から探して見つける。
って習いました。
だって前から見ていかないと、そもそも後ろ(NULLのある場所)が
何処なのか分からないから。
VBなんかは、文字列の先頭に文字列の長さを持っていて最後の位置が何処なのか分かるみたいですけどね。
0975名前は開発中のものです。2010/09/22(水) 15:59:10ID:go2dVt0W
kazukiはどんなコンピュータを使ってるんだろう。
0976名前は開発中のものです。2010/09/22(水) 16:01:12ID:KlyUHZKS
うわ・・やべwww

気が付いたら、
もう埋まりそうだ・・(^^;
0977名前は開発中のものです。2010/09/22(水) 16:02:39ID:VAUtS0z/
>>976
int a; a=0; a=a++; a=2; printf(a);
これはどうなる?
0978名前は開発中のものです。2010/09/22(水) 16:04:19ID:kfs4f4gp
演算の順番は、ANSI規格で規定されている。
この順にする。
@演算子の優先順位に基づいて 順に演算される。
A演算子に基づいて結合規則が当てはめられる。(その部分だけの向きを意味する)
B演算子の優先順位が同じ場合は、向きはどちらからでもよい。

Bの説明は、
c=1+2+3
この場合は、 1+2+3でもよい、 3+2+1でもよい。
順番に依存するコードは機種依存があるので悪いコードである。

もし、最新のANSI規格で変更になったのならば、教えてください。
0979名前は開発中のものです。2010/09/22(水) 16:06:28ID:N6b8LlOZ
大丈夫!安心のKAZUKI企画だよ!
0980名前は開発中のものです。2010/09/22(水) 16:07:11ID:6Sww9jS9
KAZUKI規格に厳密に準拠したKazukiコンパイラです
0981名前は開発中のものです。2010/09/22(水) 16:12:04ID:KlyUHZKS
int a = 0;


これを入力するとき、

1.i
2.n
3.t
4.スペース
5.a
6.スペース
7.=
8.スペース
9.0
10.;

こんな感じに一文字ずつキーボードから入力しているでしょ?
だから、入力している地点で、ゴールはすでに解ってる。

もっと細かく言うと、
キーボードのキーを押して「文字がディスプレイに表示」もプログラムが動いています。
キー入力もリピート状態で、
次の入力をコンピューターが待っている状態です。

そこでキーを押すと一瞬でプログラムが動いて終了し、
押したキーがディスプレイに表示される。

なので、どこがゴールなのかは、
すでにコンピュータは解ってる。

知りたいのは、スタート地点。
0982名前は開発中のものです。2010/09/22(水) 16:13:12ID:6Sww9jS9
突っ込みどころ満載
0983名前は開発中のものです。2010/09/22(水) 16:15:47ID:go2dVt0W
そろそろ釣り宣言を出して終わらせて欲しくなったw
0984名前は開発中のものです。2010/09/22(水) 16:16:13ID:6Sww9jS9
>>983
コイツ絶対次スレ立てるぞ
0985名前は開発中のものです。2010/09/22(水) 16:16:20ID:VAUtS0z/
>>981
なんでスタートが分からないのにゴールが分かるの?
ソースを他から持ってきてもゴールは分かるの?
0986名前は開発中のものです。2010/09/22(水) 16:16:25ID:MuuXCIIp
>>981
>>967 の質問に答えてよ。またスルーですか?
0987名前は開発中のものです。2010/09/22(水) 16:16:44ID:KlyUHZKS
じゃあ、これを
次回までの俺からの宿題にしておくよ。

俺が言っている「右から左=後ろから前」を詳しく調べて、
次回までに納得しておいてください。

上の宿題よりもこっちの方が面白いかもね。(^^
0988名前は開発中のものです。2010/09/22(水) 16:16:50ID:kfs4f4gp
したらば、

Kazukiは、どのコンパイラを使っていますか? Borland C++ですか?
0989名前は開発中のものです。2010/09/22(水) 16:17:11ID:6Sww9jS9
>>988
Kazu...いや、VCしか使えないと思う
0990名前は開発中のものです。2010/09/22(水) 16:22:18ID:kfs4f4gp
30年ほど昔のPCはカセットテープしかなくて、
カセットテープから一文字づつ読み込んでコンパイルしていた。
2パスだから2度読みする。それはアセンブラコンパイラ。
0991名前は開発中のものです。2010/09/22(水) 16:23:18ID:KlyUHZKS
それでは、皆さん!

ここまで付き合ってくれてありがとうございます。

次回スレはもちろん立てますが、
当スレでは現スレ完結でいきますので、
このスレはこのスレで完結です。

なので、次スレのリンクは貼りません。

次スレを立てたなら
そこから新たなスタートです。

このスレを知らない人が、
次スレから参加することもありえます。


では、皆さん。
また会える日まで、お元気で!(>▽<
0992名前は開発中のものです。2010/09/22(水) 16:23:35ID:VAUtS0z/
このバカにも「目を背ける」以外の逃避ができなくなるような反例がないもんかな
0993名前は開発中のものです。2010/09/22(水) 16:24:27ID:KlyUHZKS
ume

ほ〜た〜るの、ひ〜か〜り〜♪
0994名前は開発中のものです。2010/09/22(水) 16:24:29ID:m4G9jaBa
>978
結合は同一順位の演算順序じゃなかったっけ
もし勝手に演算順序変えられるとover/underflowしたり誤差が捨てられたりして困るんだが
>981
ゴールもスタートもわかんねーよ
cpuに全てを見渡す能力はついちゃいねーよ
0995名前は開発中のものです。2010/09/22(水) 16:25:01ID:go2dVt0W
「そんなのは俺にはどーでもいい」
これで逃げるから無理w
0996名前は開発中のものです。2010/09/22(水) 16:25:39ID:6Sww9jS9
「動けばいい」とか言ってたしねえ
0997名前は開発中のものです。2010/09/22(水) 16:25:50ID:VAUtS0z/
動かないんだけどね
0998名前は開発中のものです。2010/09/22(水) 16:26:29ID:KlyUHZKS
アナウンス:このスレは終了しました。
 まもなく、このスレは閉幕いたします。

 皆さん、当スレの御アクセス御投稿、まことにありがとうございました。
0999名前は開発中のものです。2010/09/22(水) 16:26:42ID:MuuXCIIp
結局都合が悪いのはスルーかw
1000名前は開発中のものです。2010/09/22(水) 16:27:03ID:6Sww9jS9
1000ならbakazuki
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。