C言語を憶えたくて

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

C言語を憶えたくて

#1

投稿記事 by OP » 14年前

C言語について関係ないかなとは思っているのですが、あまりにも私はC言語を覚えられなくて困っています。
まだまだ初心者な私に誰か、良いC言語の憶え方など教えていただけると助かります。
それでもやっぱりこういう憶えるのは実際にコピーじゃなく書いたりしたほうがいいんでしょうか?

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

Re: C言語を憶えたくて

#2

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

とりあえず、最初の頃はコピーよりは手打ちしたほうが良いでしょう。
あと、一行一行の意味を理解するようにされていますか?一行一行を理解して、それぞれの説明を日本語で書いてみてください。
数値を変えたらどうなるのか?とかなぜforでこの数字じゃないといけないのか?とか説明をできたり、forをwhileに置き換えてみたり、色々とチャレンジしてみることも必要です。
流れの理解としては、一行一行の並びを変えたらどうなるのか?この順番で並んでいけない訳は?など説明できるぐらい理解する必要があります。

例えば、
「新・C言語 ~ゲームプログラミングの館~ [DXライブラリ]」
http://dixq.net/g/
をまず理解してみて、ある程度理解できたなと思ったら、ゲームプログラミングの館の最初にある説明文と
「DXライブラリ置き場 リファレンスページ」
http://homepage2.nifty.com/natupaji/DxLib/dxfunc.html
だけを見て下のプログラムと同じプログラムが書けるかチャレンジしてみてください。

こんな感じです。
「1.7章 裏画面処理をして画像を動かす」
http://dixq.net/g/01_07.html
引用
 6章で裏画面処理の必要性について説明しました。裏画面に画像を描画して、1フレーム分の画が出来たら表画面に反映する手順を踏みます。

と言っても、またもさすがのDXライブラリ。全く難しいことはありません。

・描画先を裏画面にする関数を最初に呼んでおく
・ループの最後に裏画面を表画面に反映する関数を呼ぶ

これだけで実現出来てしまいます。

描画先を裏画面にするには

SetDrawScreen( DX_SCREEN_BACK );

と最初に一度だけ書いておきます。

すると DrawGraph関数 など、描画する関数で画像を描画すると自動的に裏画面に描画されます。

後はループの最後に裏画面に描いた内容を表画面に反映する関数である ScreenFlip関数 を呼び出せばいいだけです。

今回も、ただこの関数を呼び出せばいいだけで詳しく知る必要はないので、関数の詳細は説明しません。
だけを見てプログラムを書いてみます。どうです。書けますか?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

OP

Re: C言語を憶えたくて

#3

投稿記事 by OP » 14年前

ありがとうございます!早速やってみたいとおもいます!

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

Re: C言語を憶えたくて

#4

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

本当に理解できているかは、ここで実際にどれかのプログラムを日本語で書きだしてもらえば添削しますよ。
あと前の質問もそうですが、どうなったか結論は書いてくださいね。

フォラムルールにあるのですが、、
http://dixq.net/board/board.html
引用:また、解決した時は、「解決しました」とだけ言って去らず、ソースコードや解決した方法を明記して下さい。
よろしくお願いします。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

OP

Re: C言語を憶えたくて

#5

投稿記事 by OP » 14年前

日本語で訳すということをやってみたところ、なんとか覚えられそうなのでこのままやっていこうとおもいます!!ありがとうございました!!

閉鎖

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