最終更新:2017-06-02 (金) 13:54:02 (753d)  

C言語/配列 はてなブックマークを見る
Top / C言語 / 配列

同じ型のデータの集まり

データ型 配列名[要素数];
int data[10];

C言語/初期化

  • int a[3] = {1, 2, 3};
  • 初期値が指定してある場合、要素数を省略できる
    int a[] = {1, 2, 3};
  • 初期化の足りない要素は 0 で初期化される

サイズ

  • 配列は要素数をプログラム中で変更出来ない

可変長配列

  • 標準では非サポート
  • GCCの独自拡張では可能。
  • C99で機能追加。

動的確保

  • malloc
    ポインタ変数 = malloc(必要なメモリのバイトサイズ);
  • 返されるポインタ変数には、確保された配列の先頭アドレスが代入される
    int *p;
    p = (int *)malloc(sizeof(int) * 10);
  • mallocが返すアドレスはvoid型のポインタ
    • C++コンパイラではキャストしないとエラーがでる
  • realloc? - 要素数を拡大

アドレス

  • char a[4] = "ABC";
  • のとき
  • 配列 a の先頭要素のアドレス
    a == &a[0]

関連