前川です。

植田さん、再々のご連絡ありがとうございます。

> C# は知りませんが、C でも

> int a;

> と書けても、これで

> a = a + 0;

> をすると値は不定になりますよね。

そうでした int a = 0; と記述しますね。

> ------------------------------
> ueda@ran[~ ]cat test.c
> #include <stdio.h>

> int main(void) {
> int a;
> a = a + 0;
> printf("%d\n", a);
> return 0;
> }
> ueda@ran[~ ]./test
> 134513520
> ------------------------------

> なので『変数の型を宣言する』と『変数の初期化をする』の話が混ざっている
> と思います。

確かに、そうです。型の宣言と、初期化を混ぜてます。。恥ずかしい限りです。

>
> > また、string b ="" のような記述は出来ないのでしょうか?

> 『変数 b は文字列クラスのインスタンスで、初期値は空』という記述であれ
> 

> b = String.new('')

> で良いと思います。でも面倒なので私は

> b = ''

> と書いてしまいますけど。

ありがとうございます。参考になりました。