[過去ログ] Qiita 6 - キータぞ、来たぞ、キータだぞー (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
284
(1): デフォルトの名無しさん [] 2025/04/28(月) 11:24:23.32 ID:1z3fGXd6(1/2) AAS
誰かが言ってるけど、 MPLAB XCとか?
確かにあれはマイクロコントローラ専用に設計された「カスタムC言語亜種」
マーケの都合からか ANSI準拠(with some restrictions) ということになってるみたいだけど…

with some restrictions拡大解釈し過ぎで全然準拠してない。C言語ではないといっても過言じゃない。

昔は、そもそも "RAM" が128byte(64ビットレジスタでいえば16本分)とかだったから、
static変数宣言 = free不要の永久malloc みたいなもんで、むしろ余計な初期化を省けるのは便利。
(ゼロ初期化されたらcallocになっちゃう)
だからバグっていうかそういう意図的な仕様なんでしょうね。mallocないし。

※ マニュアルには、「初期値が明記されている static 変数は初期化されます」みたいな感じで
「暗黙的に」すべての static 変数が初期化されるわけじゃないことが匂わされてる

ただ、あれを「C言語」として売ったりしてるから日本の掲示板の片隅で不毛な争いが起きる。
286
(1): デフォルトの名無しさん [sage] 2025/04/28(月) 12:33:19.45 ID:1j/8tpCQ(1) AAS
>>284
マニュアルってどれ?

> 適当な --RUNTIME オプションを使わない限り、全ての static 変数は初期化されます。
> https://ww1.microchip.com/downloads/jp/DeviceDoc/50002184A_JP.pdf
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.064s