問題タブ [alignof]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
132 参照

c++ - alignof(T*) は可能なすべての型で同じですか? sizeof(T*) はどうですか?

alignof(T*)すべての可能なタイプで同じ値ですかT? どうsizeof(T*)ですか?さまざまなコンパイラの現在の状況ではなく、標準で許可/指定されているものに基づいて答えてください。

0 投票する
1 に答える
96 参照

c - パックされた生データの実効型

非常に大きなデータセットでのメモリの断片化を避けるために、二重にリンクされたリストを実装して、malloc2 回呼び出すことを回避mallocしました。代わりに、およびノードを含む のオフセットを取得するために、必要なスペースを 1 回で割り当てます。prevnextalignofstructprevnext

実装はここにありますが、関連する部分を抽出しています:

次に、でmain

wheredataは、任意のプリミティブ型または複合型へのポインターにすることができます。

問題は、関連するすべてのメンバーを含む典型的なパッケージ構造ではないということです。

有効な型のルールが気になります:

文字型ではない型を持つ左辺値を介して、宣言された型を持たないオブジェクトに値が格納された場合、その左辺値の型は、そのアクセスおよびその後のオブジェクトを変更しないアクセスの有効な型になります。保存された値。

この規則はリストの実装にどのように影響しますか?

合法/移植可能なコードですか?