MENU
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
カテゴリー
  • IT関連 (623)
    • Bootstrap (2)
    • クラウド (4)
    • サーバー技術 (185)
    • ストレージ (7)
      • NetApp (7)
    • ネットワーク技術 (91)
      • Cisco (36)
      • Juniper (18)
      • 負荷分散装置 (17)
    • パソコン関連 (92)
      • MAC (25)
      • Windows (54)
    • プログラミング (154)
      • Ansible (11)
      • C言語 (23)
      • Python (111)
        • Django (20)
    • 仮想化 (88)
      • Docker (63)
      • VMware (23)
  • VPS (200)
    • ABLENET VPS (16)
    • Amazon Lightsail(VPS) (2)
    • ConoHaVPS (37)
    • mixhostVPS (4)
    • WebARENAIndigo (16)
    • XServerVPS (34)
    • お名前.com VPS (12)
    • さくらのVPS (24)
    • カゴヤクラウドVPS (13)
    • シンVPS (7)
  • レンタルサーバー (56)
    • エックスサーバー (38)
  • 光回線 (8)
  • 技術スキルアップ開発・学習 (7)
    • Envader (2)
    • RareTECH (2)
    • Udemy (3)
もう現役20年超えましたー。経験値ならだれにも負けないエンジニア技術ブログ
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
インフラエンジニアの技術LOG
  • VPS(レンタルサーバ)比較
  • ITエンジニアの転職
  • IT技術入門(Engineers.LOG)
  1. ホーム
  2. IT関連
  3. プログラミング
  4. C言語
  5. C言語の構造体を使った構文作成例

C言語の構造体を使った構文作成例

2019 10/03
C言語
2014年11月26日2019年10月3日

構造体の基礎は、小学校のクラス(char)と人数(int)を管理するプログラムを作りたいといった時に便利です。

構造体は、違う型(charとint)を組み合わせて作った型のことで、構造帯を使うためには以下のように2つの構文を作成する必要があります。

目次
安くて高速!高性能VPSで快適開発!
最速5分でサーバー構築
>>>こちらをチェック

エンジニア必見! 技術力を伸ばすVPS徹底比較
>>>VPS比較

C言語の構造体の構文

次のプログラムは、幼稚園のクラスと人数を登録するプログラムです。
全部で3クラスでそれぞれのクラス名と人数を登録して画面に出力させます。

# vim test.c
#include <stdio.h>
#define NAME 10
#define ARRAY 3

struct Section{                         /* struct Section構造体 */
        char section_name[NAME];
        int member_num;
};

int main(void)
{
        struct Section class[ARRAY];    /* classという構造体の配列 */
        int index;

        /* 構造体に値を入力する構文 */
        for (index = 0; index < ARRAY; index++){
                printf("クラス名[%d]:",index);
                scanf("%s",class[index].section_name);
                printf("人数[%d]",index);
                scanf("%d",&class[index].member_num);
        }

        /* 構造体の配列を画面に出力する */
        printf("登録したクラスの名前と人数を出力\n");
        printf("-----------------------------------\n");
        for (index = 0; index < ARRAY; index++){
                printf("クラス名 : %s\n",class[index].section_name);
                printf("人数 : %d\n",class[index].member_num);
                printf("-----------------------------------\n");
        }
        return 0;
}

いつもどおりのコンパイル

# gcc test.c -o test
# ./test
クラス名[0]:さくら
人数[0]30
クラス名[1]:ばら
人数[1]25
クラス名[2]:すみれ
人数[2]66


登録したクラスの名前と人数を出力
-----------------------------------
クラス名 : さくら
人数 : 30
-----------------------------------
クラス名 : ばら
人数 : 25
-----------------------------------
クラス名 : すみれ
人数 : 66

※構造体のメンバ指定するためには、ドット演算子を使います。

今回の構文は今までのfor文や、変数などを用いて作成しているので注意し、確認しながら設定していきましょう。

以上です。

エンジニアスキルをアップする勉強法

ITエンジニアの開発・検証・学習としてインターネット上で専用のサーバ(VPS)を利用しましょう!
実務経験はVPSで学べます。

あわせて読みたい
現役エンジニアがおすすめするVPSレンタルサーバ比較(高速SSD限定) 格安VPS比較(2025年最新版)

C言語
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする コメントをキャンセル

email confirm*

post date*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)



検索
カテゴリー
新着記事
  • XServerVPS アニメ風 男の子 プログラミングをしている VPSを利用している 楽しそうにしている
    XServerVPSで証明書(SSL)を取得する方法
    2025年3月24日
    XServerVPS
  • レンタルサーバ アニメ風 女の子 楽しんでパソコンをしている 目がキラキラ
    WordPressがレンタルサーバよりVPSで利用する方がおすすめの理由
    2025年3月19日
    VPS
  • VPS レンタルサーバー アニメ風 女の子 プログラミングをしている VPSを利用している 楽しそうにしている
    VPSとクラウドの違いとは?初心者向けにわかりやすく解説
    2025年3月5日
    VPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSはWindows serverを利用できない。その理由と利用できるOSは?
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSでゲームを利用する環境はあるのか
    2025年3月4日
    シンVPS
  • シンVPS アニメ風 女の子 パソコン プログラミングをしている VPSを利用している 楽しそうにしている
    シンVPSのサイトの表示速度は他社に比べて早いのか?
    2025年3月4日
    シンVPS
目次
目次