C言語のことは漏れらに聞け!!<40>

このエントリーをはてなブックマークに追加
int i;
for (i=0; i<n; i++)
hoge[i]=1;
953デフォルトの名無しさん:02/11/10 05:53

     次 ス レ の 予 感
954947:02/11/10 05:53
>>950
確かVC++では ZeroMemory は memsetのマクロだったはず。
>>951
??
>>951
hoge[0]だろ
>>956
????
958947:02/11/10 05:55
>>956
なんで?
959デフォルトの名無しさん:02/11/10 05:56
つーか、x86 + VC なら、ポインタも浮動小数点数も ZeroMemory() でいいじゃん。
>>948
hoge[0]だけが1になったけど、、、
>>958
なんでってCの配列の添え字は0からじゃん(笑)
962947:02/11/10 05:57
>>959
うん。だから処理系依存を承知でと書いたわけだけど。
次は配列の添え字と初期化論争ですか?
大域変数
double foo;
void *bar;
とすると、
foo == 0.0、bar == NULL
に初期化されるの?それとも全バイト 0 に初期化されるの?
memsetって高速化するためにできるだけintバイトごとに初期化していたりする?
NULLポインタが0で埋まってない処理系ってあるんだ。
>>964
=0と同じことになる。
doubleに0を入れようとすると0.0を入れようとしたことになるはず。
968947:02/11/10 05:59
>>961

>>951
> それ、hoge[1] 以降は全部 0 だぞ。
と書いてますが?

なんでそれが
> hoge[0]だろ
になるわけ?
以降の意味知ってる?
誰か次スレ立てて。
漏れ立てられない。
>>968
あー!
ごめん、なんでそんな勘違いしたんだろ(笑)
>>968
hoge が大域変数なんて書いてあったっけ?
>>967
なるほろ。じゃあ bar も NULL になる?
973947:02/11/10 06:02
>>965
intどころかもっと大きいサイズでもやってるかも。
>>971
(゚Д゚)ハァ?
>>972
そう。
>>974
(;´Д`)ハァハァ
でかい自動変数のdoubleの配列を0.0に初期化するときはループ使うのが一番てっとりばやい?
>>976
(・∀・)

>>971
968 の話とグローバル変数かどうかが何で関係あるわけ?
誰か次スレ頼むー!!

>>977
速さで言えば宣言の時に初期値指定した方が速い。
配列は全て初期化されるんじゃなかった?
>>978
968 は関係なかったね。hoge[1] 以降が 0 になるって話。
>>979
でかい配列だから無理がある。
>>980
マジ!?
誰か次スレ頼むー!!

>>981
初期値が省略された要素は 0 で埋められる事が規格で決まっている。
グローバルかローカルかは関係無い。
>>984
マジ知らなかった。スマソ
>>984
int a[1024]={78,22,-2};とやったらa[3]以降は不定だったと思うけど、、、
>>984
アセンブラ出力させたらそんなコード吐いてなかった。
スタックを確保してただけ。おれの処理系がダメなのか。
新スレは
このスレの >>1のコピペでいいか?
それよければ漏れが立ててくるが。
このスレ、過去ログ情報がないね。
989985:02/11/10 06:17
>>984
まてぃ。試しにやってみたらやっぱ初期化されてないぞ!
うそつけ!
>>988
訊という字を聞にしてほしい
あとはそのままでOK
991984:02/11/10 06:18
C99 だったカモー・・・

で、誰も次スレ立ててくれんのか?
漏れのホストでは立てられない。
いちいち初期化していたら効率が悪くなるよ。
静的変数は一度だけ領域を確保するから初期化してもあまり問題ではないけど。
俺も無理。
たてすぎだった。
994985:02/11/10 06:19
>>984
まてぃ
int hoge[100] = { 1 };
こうしたら、hoge[1] 以降は 0 に初期化されてた。
やっぱスマソ
9961:02/11/10 06:22
やっぱり3日もたなかったな。
>>995
お疲れ!!
しかし、漏れのホストずっとスレ立てられないんだけど、何でだ・・・。
同じホストで乱立ヴァカがいるのか。
   ∧∧
   /⌒ヽ)
  i三 ∪
 ○三 |
  (/~∪
  三三
 三三
三三
   ||
 ∧||∧
(  ⌒ ヽ トゥトゥトゥマシェーリー
 ∪ 。ノ    トゥトゥトゥマシェーリー
  ∪∪
     ∧∧  ミ _ ドスッ
     (   ,,)┌─┴┴─┐
    /   つ  終 了.  |
  〜′ /´ └─┬┬─┘
   ∪ ∪      ││ _ε3
10011001
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。