typedef struct と struct の違い: typedef struct は構造体型のエイリアスを作成するのに対し、struct は新しい構造体型を定義します。 typedef struct で作成されたエイリアスは宣言後に使用でき、struct で定義された構造体は定義後に使用できます。 typedef struct も struct も追加の記憶領域を作成しません。
typedef struct と struct の違い
C では、typedef struct
andstruct
の違いは次のとおりです:
## エイリアスと定義:
は、既存の
struct 型のエイリアスを作成します。これは、新しい型名を定義するだけで、新しい構造体は作成しません。
は、新しい構造タイプを定義するために使用され、新しいデータ構造が作成されます。
使用法:
作成したエイリアスは型名として使用できます, ノーマルタイプと同様です。
定義された構造体は、構造体名を使用して参照できます。
アクセシビリティ:
は、ソース ファイル全体でエイリアスを作成し、アクセス可能です。エイリアスが宣言された後。
定義された構造体は、構造体が定義された後にのみアクセスできます。
ストレージスペース:
および
struct は両方 追加のストレージは作成されません。構造の参照または作成に便利なだけです。
例:
<code class="cpp">// 定义一个结构体 struct Point { int x; int y; }; // 为结构体创建别名 typedef struct Point PointAlias;</code>上記の例では、
PointAlias は
Point構造体のエイリアスは次の方法で使用できます。
<code class="cpp">PointAlias point; // 声明一个PointAlias类型的变量 point.x = 10; // 访问变量的成员</code>
概要:
構造体タイプ 、および
struct は新しい構造体タイプを定義します。
で作成されたエイリアスは宣言後に使用でき、
struct で定義された構造体は定義後に使用できます。
も
struct も追加の記憶域スペースを作成しません。
以上がtypedef struct と C++ の struct の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。