[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:15965] Re: Question about C



いはら@くらしき作陽大学です.

99/06/10 17:54:55--Kenshi Muto <kmuto@xxxxxxxxxxxxxxx> wrote:
> 武藤@イソターネット協会です。
> 
> Thu, 10 Jun 1999 17:31:31 +0900, Atsuhito Kohda <kohda@xxxxxxxxxxxxxxxxxxxx> wrote about [debian-
users:15963] Question about C (<19990610173347G.kohda@xxxxxxxxxxxxxxxxxxxx>):
> kohda>   envja = getenv("LANG");
> kohda>   if (strcmp(envja, "ja_JP.ujis") == 0)
> kohda> 
> kohda> は効くのに
> kohda> 
> kohda>   if ( envja == "ja_JP.ujis" )
> kohda> 
> kohda> だと効いてないようなんですが何故でしょう。
> 
> たとえば int の配列同士を == 演算子で比較できるでしょうか?
> Cで文字列はcharの配列で表現しています。

というか,envja は,ポインタ変数で env 情報文字列が入った領域へのポインタが
格納されていて,ここで,ja_JP.ujis という文字列が格納されている領域(別の領
域)へのポインタと比較しています.同じ文字列がどちらにも格納されていても,
領域は違うわけですから等しくなりませんね.

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
_/_/_/_/_/_/_/_/
_/_/_/_/_/_/           井原 零(いはら れい)
_/_/_/_/
_/_/_/       くらしき作陽大学 食文化学部
_/_/
_/                  ihara@xxxxxxxxx
                                        086-523-0888

======================================================^O^