0Pricing
C Academy · レッスン

構造体の定義と使い方

関連する変数を構造体にまとめ、実際のアプリケーションでstructを使う方法を学びます

「構造体の定義と使い方」はCoddyKit上の無料C Academyレッスンです。 これはレッスン1/3です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはC Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 C Academyコースには全3レッスンが含まれています。

構造体の定義と使用

構造体の定義と使用

構造体(struct)を使うと、関連する変数を1つの名前にまとめられます。

このレッスンでは、次のことを学びます。

  • 構造体の定義と使用方法
  • 構造体メンバーへのアクセス方法
  • 構造体を関数に渡す方法
構造体の定義と使い方 — イラスト1

構造体とは

構造体とは

構造体は、異なる変数をまとめるユーザー定義のデータ型です。

構造体定義の例:

struct Person { char name[50]; int age; float height; };

ここでは、Person構造体に名前、年齢、身長を保存しています。

構造体の宣言と初期化

構造体の宣言と初期化

構造体を定義したら、宣言して初期化できます。

struct Person p1 = {"Alice", 25, 5.7};

後から値を代入することもできます。

p1.age = 30;

構造体メンバーへのアクセス

構造体メンバーへのアクセス

構造体メンバーには、ドット(.)演算子を使ってアクセスします。

例:

printf("Name: %s\n", p1.name);

このコードは、構造体に保存されている名前を出力します。

例:構造体の使用

例:構造体の使用

このプログラムでは、構造体の定義、初期化、メンバーへのアクセスを示します。

#include <stdio.h>

struct Person {
    char name[50];
    int age;
    float height;
};

int main() {
    struct Person p1 = {"Alice", 25, 5.7};
    printf("Name: %s\n", p1.name);
    printf("Age: %d\n", p1.age);
    printf("Height: %.1f\n", p1.height);
    return 0;
}

構造体へのポインター

構造体へのポインター

効率的にメモリを管理するために、構造体へのポインターを使用できます。

例:

struct Person *ptr = &p1;

メンバーには、アロー(->)演算子を使ってアクセスします。

printf("%s", ptr->name);

例:構造体へのポインター

例:構造体へのポインター

このプログラムでは、ポインターを使って構造体メンバーにアクセスする方法を示します。

#include <stdio.h>

struct Person {
    char name[50];
    int age;
};

int main() {
    struct Person p1 = {"Bob", 30};
    struct Person *ptr = &p1;
    printf("Name: %s\n", ptr->name);
    printf("Age: %d\n", ptr->age);
    return 0;
}

構造体を関数に渡す

構造体を関数に渡す

構造体は、値渡しまたは参照渡しで関数に渡せます。

例(参照渡し):

void update(struct Person *p) { p->age += 1; }

参照渡しにすると、大きな構造体のコピーを避けられます。

まとめ

まとめ

このレッスンでは、次のことを学びました。

  • 構造体の定義と使用方法
  • 構造体メンバーへのアクセス方法
  • 構造体でポインターを使用する方法

次は、C言語の共用体とメモリ効率について学びます。

構造体の定義と使い方 — イラスト10

よくある質問

「構造体の定義と使い方」レッスンは無料ですか?

はい。「構造体の定義と使い方」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、C Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 C Academyコースには全3レッスンが含まれています。

「構造体の定義と使い方」で何を学びますか?

関連する変数を構造体にまとめ、実際のアプリケーションでstructを使う方法を学びます ブラウザで直接実行するハンズオンコードでC Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

C Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのC Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/3です。

「構造体の定義と使い方」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このC Academyレッスンでコードを書いて実行できますか?

はい。すべてのC Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 構造体の定義と使い方
  2. 共用体とメモリ効率
  3. 列挙型(enum)
← C Academyに戻る