C & C++

배열

Man.날.코딩 2023. 1. 16. 22:09
반응형
SMALL

특정한 데이터 타입을 갖는 동일한 변수를 한번에 여러개 만들어 묶는것을 배열이라고 한다.

배열은 반드시 동일한 데이터 타입을 갖아야 한다.

 

데이터 타입 변수명[ 배열수 ] = { 초기화 };

여기서 데이터 타입과 변수(배열)명은 반드시 있어야 하고, 배열수와 초기화 여부는 상황에 따라 있어도 되고 없어도 된다.

 

int nNums[10]; // 이럴경우 초기화는 없어도 된다.

int nNum2[] = {1,2,3,4,5,6}; // 총 6개의 배열을 사용하면서 초기화를 했는데, 이럴경우 배열수는 없어도 된다.

 

int nNum3[5] = {1,2.3,4,5};

1 2 3
  4 5
                   
                   
                   

위와 같이 메모리상의 나란한 공간에 배열을 할당받게 된다.

위 배열은 총 5개의 int형 공간을 확보하고 배열 인덱스를 사용하여 접근할 수 있다.

for(int i=0; i<5; i++)

   printf("nNum[%d]=%d\n", i, nNum[i]);

 

위 예제에서 처럼 배열의 인덱스는 0부터 시작하고 갯수-1까지로 지정 가능하다.

 

문자열도 문자형(char)의 특별한 배열이다, 문자열은 다만 다음과 같은 초기화를 허용한다.

char MyString[] = "Hello World";

위와 같이 특별하게 ""(큰따옴표)를 통해 문자형 배열, 즉 문자열을 선언할 수 있다. 이렇게 문자열로 초기화한경우에도 배열수를 명시하지 않아도 사용할 수 있으며 MyString[0] 과 같은 방식으로 한 문자씩만 접근도 가능하다.

위에 문자열을 모두 화면에 프린트하려면...

printf("%s", MyString);

이렇게 적으며, 보시다시피 문자열을 출력할때는 [인덱스]가 생략된채 배열명만 적었음을 주의해야 한다.

 

 

 

반응형
LIST