[C언어] 배열

0

C언어

목록 보기
2/7


배열

  • 배열은 변수와 다르게 값을 하나가 아닌 여러 개를 담을 수 있습니다. 여러 개의 값을 담을 수 있고, 인덱스(자릿값)이 있는 만큼 보통 반복문과 엮어 사용됩니다.

배열 초기화 하는 방법

int main()
{
  int arr1[5] = {1, 33 , 47, 102, 155}; // 선언과 동시에 초기화
  int arr2[5] = {5}; // 0 번째 값을 5 로 초기화하고 나머지는 모두 0 으로 초기화
  int arr3[5] = {5, 10}; 
  // 0 번째 값을 5, 1 번째 값을 10으로 초기화하고 나머지는 모두 0 으로 초기화
  int arr4[5] = {}; // 모두  0 으로 초기화
  int arr5[5]; // 초기화 하지 않음
  int arr6[] = {11, 22 , 33, 44}; // 배열의 크기가 4로 정해지면서 자동으로 초기화

  return 0;
}

배열의 크기 구하기

  • sizeof함수는 메모리 상에서 차지하고 있는 용량에 대해서 알려줍니다.
    이 함수를 이용하여 전체 배열중 하나의 요소로 나누면 쉽게 배열의 크기를 알 수 있습니다.
#include <stdio.h>

int main()
{
  int arr[] = {519, 31, 7988, 165326, 100, 150};

  printf("%d\n", sizeof(arr)); // 배열이 메모리 상에서 차지하고 있는 용량
  // int 는 4 바이트이고 6개가 있으므로 출력 결과는 : 24

  printf("%d\n", sizeof(arr) / sizeof(arr[0])); // 배열의 크기를 구하는 방법 중 하나
  // 배열의 전체는 24 바이트지만 요소 하나는 4바이트
  // 전체 배열을 요소 하나로 나누면 길이를 구할 수 있다
  // 출력 결과는 24 / 4 이므로 6
  printf("%d\n", sizeof(arr)/sizeof(int)); //따라서 이렇게 해도 똑같이나옴
  
  return 0;
}
  • 배열은 int자료형이 여러개 붙어 있는 형태입니다. int는 4바이트이므로 sizeof(int)는 4가 됩니다. sizeof(arr)를 하면 자료형의 크기 때문에 20이 되므로, 해당 자료형의 크기만큼 나눠주어야 한다. 20 나누기 4는 5 이므로, length는 5 가 됩니다.

한 눈에 끝내는 c언어 기초 를 공부하고 작성한 글입니다.

0개의 댓글