c언어 프로그래밍 1차원 배열 이름을 대상으로 한 * 연산
c언어 프로그래밍 1차원 배열 이름을 대상으로 한 * 연산 ■ 지난 글에서 배열의 이름은 포인터 형이라는 걸 확인해봤었는데요. 둘이 같다면 배열 이름을 대상으로도 *연산을 할 수도 있고 반대로 포인터를 배열의 이름처럼 사용해서 그 요소에 접근할 수 있다는 의미인데요. 그 과정들을 예제로 살펴보겠습니다. 먼저 배열 이름을 대상으로 *연산을 하는 과정입니다. ▲ int형 배열 a와 double형 배열 b를 각각 선언하고 값을 초기화하고 있는데요. a와 b에 *연산자로 접근하고 있습니다. 지난 글에서 배열의 이름은 첫 번째 요소 [0]의 주소값을 저장한다고 했었는데요. *연산자로 그 자리에 접근해서 저장된 값들을 출력하고 있는 모습입니다. 10과 10.1이 출력되겠죠? 확인해보겠습니다. ▲ 예상했던 값이 출력..
C언어 독학 배열로 문자열 표현하기
C언어 독학 배열로 문자열 표현하기 ■ C언어에서 문자열을 표현할 때는 큰따옴표("")를 이용하는데요. char 배열을 이용해서 문자열을 저장하고 변경할 수 있는데 간단한 코딩을 해보면서 그 과정을 확인해보겠습니다. 먼저 char 배열에 문자열을 저장하겠습니다. ▲ char 배열 str에 길이를 지정하지 않고 문자열을 입력하고 있습니다. 이렇게 길이를 지정하지 않으면 컴파일러가 문자열을 체크한 후 그 길이를 자동으로 지정해주는데요. 1byte의 char의 길이를 확인하기 위해서 sizeof() 연산자를 사용하고 있습니다. 프로그램을 실행하면 다음과 같은 결과가 출력되는데요. ▲ str 배열의 크기는 8byte이군요. 1byte 짜리 데이터가 8개 있다는 소리인데.... 좀 이상합니다. "Hello~!" ..
c언어 배열 초기화 array initialization
c언어 배열 초기화 array initialization ■ 지난 글에서 c언의 배열의 개념과 선언 방법 등을 정리해봤는데요. 이번에는 배열을 선언과 동시에 초기화를 하면서 배열의 몇 가지 특징을 정리해보겠습니다. 먼저 선언과 동시에 초기화하는 방법은 다음과 같습니다. int aaa[3]={1, 2, 3}; 이런 형식인데요. [] 안에 3은 배열의 길이를 의미하고 1, 2, 3이 순서대로 저장됩니다. 이게 c언어 배열 초기화 기본 형식이rh요. 만약 길이를 의미하는 [3]을 입력하지 않은 상태에서 초기화 리스트{}의 값들을 입력하면 컴파일러에 의해서 자동으로 3이라는 길이가 저장됩니다. int bbb[]={1, 2, 3}; 앞에서 정의한 배열과 완벽하게 동일한 형식입니다. 참고하시고요. 다음은 선언한 길..
c언어 배열 선언 array
c언어 배열 선언 array ■ 배열이란 동일한 자료형의 변수를 여러 개 모아놓은 것인데요. 배열을 선언할 때는 이름, 자료형, 길이 정보가 필요하며 형식은 다음과 같습니다. int aaa [3] ◀ 자료형 배열이름 [배열길이] 즉, 배열을 이루는 요소들의 자료형과 배열의 이름 그리고 몇 개의 변수를 모아 놓을 것인지 길이를 지정해주면 됩니다. 위 형식처럼 배열을 선언하면 int형 자료형 세 개를 모아놓은 'aaa'라는 배열을 선언한 것입니다. 이렇게 배열을 선언하면 메모리의 어느 공간에 세 개의 변수가 위치하게 되는데 연속으로 위치하게 됩니다. 예를 들어 첫 번째 변수의 위치가 10억 번지라면 두 번째는 10억1번지 세 번째는 10억 2번지가 되는겁니다. ■ 그래서 아무리 긴 배열이라고 해도 순서대로 ..