無料でネットを楽しもう無料ゲームプレイレポート無料C++総合環境DirectXゲームプログラミング初心者C++ホームページ作成のコツゲーム質問掲示板ゲームリンク

超初心者C++










5.変数
変数は、数学で習うxやyのようなものです。
変化する数字をxやyのようにキーワードで扱えるようにしたものが変数です。
変数の型宣言
int x;
この文章で、int型のxという変数が出来上がりました。

[型] [区切り] [キーワード] [ ;]

[型]
使いたい変数に合った型を選んで書きます。
特に目的がなければ、intで大丈夫でしょう。

[区切り] 
宣言する時、型とキーワードの間に区切りを入れなければなりません。
もし区切りを入れなければ、「intx」というキーワードと理解されます。
すると、どこでも宣言されていないキーワードなので、「このキーワードは宣言されていません。」というエラーが出ます。

[キーワード] 
自由にキーワードを決めてください。

[ ;]
文章の終わりをあらわします。
キーワード
キーワードは半角英数と「_」(アンダーライン)を使うことができます。

頭の文字を数字にはできません。
例をいくつか書きます。

1A  ×   //最初が数字はダメ
a&  ×   // 半角記号はアンダーライン以外ダメ
A1  ○
A1A ○
saisyonitukuttahennsuu001 ○
KonnanodemoDaijoubu     ○
konna_key_word_mo_daijoubu  ○
ノートを例にした説明 (変数とアドレス)
ちょっと詳しい説明 (変数とアドレス)
私のホームページは、あるアドレスにあります。
ホームページアドレスは、本当は0と1の長い番号です。
ただ覚えにくいので、 キーワードが付けられているのです。
http://lacc.biz
は、私のページを探すためのキーワードです。
変数のキーワードもこれに似ています。
宣言されると、PC上のアドレスに変数の格納場所を確保します。
変数名(キーワード)は、メモリ上のアドレスを探すためのキーワードと考えていいと思います。
グローバル変数とローカル変数

変数は、宣言される場所によって、有効範囲が異なります。

関数内で宣言された変数は、その関数内だけで有効です。ローカル変数

関数外で宣言された変数は、すべての範囲で有効です。グローバル変数

[ 例 ]
int g_hennsu; //グローバル変数  すべての範囲で有効
kansu()
{
int hennsu;   //ローカル変数  kansu()関数内だけで有効 関数を出るとき破棄される。
//g_hennsuは、ここでも有効
}
main()          
{
int hennsu;   //ローカル変数   main() 関数内だけで有効 関数を出るとき破棄される。
//g_hennsuは、ここでも有効
}


二つの関数内で hennsuが宣言されています。
同じ名前ですが別の変数です

Cの時代、グローバル関数とローカル関数を気にしてプログラムを作っていました。
しかし、C++からクラスが使えるようになったので、昔ほどの重要さはなくなっています。

静的変数と自動変数
関数内で宣言されているにもかかわらず、関数外に出ても破棄されない変数があります。
それでいて、有効範囲は関数内だけです。
それが静的変数です。

static int X;
このように、static[区切り]を宣言の前に書きます。
staticを付けないものはすべて自動変数になります。
関数外でも、その内容を保持されます。

この機能は便利ですが、なるべく使わないほうがいいかもしれません。
プログラムがわかりにくくなる上、どんどんメモリに残っていきます。
大量に使うと、プログラムが起動している間、だんだん使えるメモリを減らすことになります。
無料C++ページで、goto文の説明をまったくしていませんが、それに似た感じです。

今はまだ、説明もしにくいものなので、後々実際のプログラム上で試してください。
説明する機会があれば説明します。

ホームページへ
このページのトップへ