1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【C言語】配列

Last updated at Posted at 2024-11-05

配列

用途 : データを複数まとめて扱う

宣言と定義

  • 値を全て0で初期化する場合
型 配列名[要素数(=データを格納する「箱」の数)] = { 0 };
  • それぞれに代入する場合
型 配列名[] = { 1, 2,...};

※利用時、配列名[要素番号(0 ~ 要素数 - 1)]で「箱」を指定する

多次元配列

用途 : ステータス管理など

  • 値を全て0で初期化する場合
型 配列名[要素数(=「箱」を格納する「箱」の数)][要素数] = { 0 };
  • それぞれに代入する場合
型 配列名[][] = { {1-1, 1-2,...},... };

char*を使わずに文字列を宣言・定義する方法

char str[] = "Hello World"; // 例

ついでに...

  • 文字列をコピーする
// コピー元の文字列にフォーマット指定子が入っていない場合
strcpy_s(コピー先の文字列変数, sizeof(コピー先の文字列変数), コピー元の文字列);

// コピー元の文字列にフォーマット指定子が入っている場合
snprintf(コピー先の文字列変数, sizeof(コピー先の文字列変数), コピー元の文字列, 変数名...);

※sizeof : ここでは、配列全体が占めるメモリ領域の大きさを取得

配列とfor文

要素番号をi(仮)に置き換える

example.c
#include <stdio.h>

int main()
{
    int numbers[] = {1, 2, 3, 4, 5};
    for(int i = 0; i < 5; i++)
    {
        // 数字を順に出力
        printf("%d\n", numbers[i]);
    }

    return 0;
}

Range-based for loop(C++11以上のみ)

forとの違い : 処理の繰り返し処理を最初から最後まで実行でき、簡潔に記述できる

example.cpp
#include <iostream>

int main()
{
    int numbers[] = {1, 2, 3, 4, 5};
    for (int number : numbers)
    {
        // 数字を順に出力
        std::cout << number << std::endl;
    }

    return 0;
}

foreach文(C#のみ)

forとの違い : 処理の繰り返し処理を最初から最後まで実行でき、簡潔に記述できる

example.cs
using System;

public class Example
{
    static int Main(string[] args)
    {
        int[] numbers = new int[]{1, 2, 3, 4, 5};
        foreach (int num in numbers)
        {
            // 数字を順に出力
            Console.WriteLine($"{num}\n");
        }
    }
}
1
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?