반응형
프로그래밍을 하다보면 가장 쉽게 만들고 사용할 수 있는 것이 int array 이다.
여러가지 숫자를 넣어서 관리하는 것이 알고리즘의 기본이 아니겠는가?
int numArray[4] = {0};
가장 쉬운 int array 선언방법이다.
위처럼 {0} 으로 선언해주면 [0][1][2][3] 의 모든 공간이 다 0 으로 초기화 된다.
printf("numArray is %d %d %d %d\n", numArray[0], numArray[1], numArray[2], numArray[3]);
//numArray is 0 0 0 0
이런식으로 데이터의 접근도 어렵지 않다. 모두 0으로 초기화 된것을 알 수 있다.
numArray[0] = 1;
numArray[1] = 2;
numArray[2] = 3;
numArray[3] = 4;
printf("numArray is %d %d %d %d\n", numArray[0], numArray[1], numArray[2], numArray[3]);
//numArray is 1 2 3 4
하나씩 값을 저장하는 것도 어렵지 않다.
하지만 char arrray 의 경우에는 조금 다르다.
아래처럼 {'a'} 로 초기화 해도 [0][1][2][3] 모두 같은 문자로 초기화 되지 않는다.
char nameArr[4] = {'a'};
printf("nameArr is %c %c %c %c\n", nameArr[0], nameArr[1], nameArr[2], nameArr[3]);
//nameArr is a
printf('nameArr is %s\n', nameArr);
//nameArr is a
[1][2][3] 은 비워져 있는 것을 볼 수 있다.
그리고 %s 로 출력하는 방법도 한번 같이 봐두자.
아래와 같이 각 배열마다 한글자씩 접근해서 수정도 가능하다.
문자열의 마지막은 '\0' 로 채워져야 한다. (그래야 프로그램이 문자열의 끝을 알 수 있다.)
nameArr[0] = 'b';
nameArr[1] = 'c';
nameArr[2] = 'D';
nameArr[3] = '\0';
printf('nameArr is %s\n', nameArr);
//nameArr is bcd
또 다른 문자열 배열 만드는 방법은 아래와 같다.
char *anotherArr = "aaab";
printf("anotherArr is %s"\n, anotherArr);
//anotherArr is aaab
위와 같이 만드는 방법이 가장 쎄련되고 편리하다.
반응형
'C언어' 카테고리의 다른 글
[C언어] UART 기능을 개발중입니다. (전역변수) (0) | 2023.01.20 |
---|
댓글