んー、あんま意味無いやりとり続いてると思うけど、
>>502は正しいよ。実際、flexible array memberについては完全にその通りだし。
> C99以前のコンパイラの中には、ゼロ長配列 Element items[0]; を可変長配列メンバーの代わりとして許容するものがありました。これは標準にはありませんが、歴史的に使われてきたトリックです。しかし、可変長配列メンバーが標準化された今、この方法は非推奨です。
> https://iifx.dev/ja/articles/457531504/%E5%8B%95%E7%9A%84%E9%85%8D%E5%88%97%E3%82%92%E8%87%AA%E5%9C%A8%E3%81%AB%E6%93%8D%E3%82%8B-c%E8%A8%80%E8%AA%9E%E3%81%AE%E5%8F%AF%E5%A4%89%E9%95%B7%E9%85%8D%E5%88%97%E3%83%A1%E3%83%B3%E3%83%90%E3%83%BC%E3%81%A8offsetof%E6%B4%BB%E7%94%A8%E8%A1%93
> properties_table[]ではなくproperties_table[1]と書いてるのは、おそらくC99より前のバージョンのC言語ではサイズ0の配列の宣言ができなかったらしいので、その辺の名残りでしょう。
> https://mem-archive.com/2018/08/10/post-529/
> 高級アセンブラ (>>460)
とはよく言われてるけど、お前らの理解が間違ってて、やりとりがナンセンスになってる。
これはC言語自体が、という「言語/文法」の事ではなく、
『C言語では記述が一対一でアセンブラに落ちる』ので、
C言語は高級アセンブラ「としても使える」という、「用法/運用」のことを言ってる。
例えば c = a + b で最適化前なら、
LD/LD/ADD/STとか、勿論CPUに依るが、お前らがそのまんま書くだろうアセンブラが出力される。
他の言語では、これはありえない。
(Cでは、書いてない事は何も実行されない)
逆に言うと、どういうアセンブラに落ちるのか、意識しながら書く事も必要で、
(アセンブラではどうとでもなるが) myStruct->myFlexbleArrayMember の表記を使いたかった時に、
みんなそれなりにやってたのを『後付で』標準化しました、って事でしょ。
>>503
お前はC言語を使わないほうがいい。
C言語に於いては、妥当な使い方で、バグがなければ、それでヨシとされてる。 flexible array member もこれ。
デタラメな使い方でもバグがない事を検出してくれ、は、他言語の範疇。
(ていうかお前多分釣りだろ?迷惑だから止めてくれ)
ニュース
- 【速報】 日本の次世代兵器「レールガン」が10連射に成功 「連射能力・電源の小型化」を得る [お断り★]
- 36歳男性が“JK店員”に恋する漫画「レジスタ!」が炎上「女性の接客トラウマを呼び起こす」 [muffin★]
- 1世帯あたりの消費支出、「10か月連続マイナス」の6・8%減…9月の家計調査 総務省 ★2 [煮卵★]
- 【速報】 高市政権、原子力潜水艦を導入視野に検討、長射程ミサイルを積んで敵基地攻撃能力(反撃能力)を担わせたい考え [お断り★]
- 1世帯あたりの消費支出、「10か月連続マイナス」の6・8%減…9月の家計調査 総務省 ★3 [煮卵★]
- 米NVIDIA、ジェンスン・フアンCEOの「愛人」が行方不明に 中国のスパイ活動を行っていた疑惑「GPUを確保する」と強調していた [お断り★]
- 【高市悲報】評論家(WILLとビューポイントに執筆)『中国で売ってないサンリオ商品まで中止に 「VIVANT」に激怒した中国官製メディア』 [432287167]
- 麦野沈利🏡
- (´・ω・`)外国行ったことないんだけどヤバかった国ある?
- 若手扱いなんやが
- な ん だ ろ う
- 国がスマホを遠隔で解析できる法案、自民維新民民チーみらなどの賛成で可決 [245325974]