1차형 배열의 선언


int arr1 [4]; - 자료형, 배열이름 , 길이정보

int arr2 [5] = {1,2,3,4,5}; // 배열 선언과 동시에 초기화

int arr3 [3] = {1,2}; // 이때 , 초기화되지않은 arr[2]에는 0이 채워진다.

배열에 값을 저장할때에는 arr[0] = 7; 이런식으로 저장한다. 이때 , 배열의 위치 정보를 명시하는 인덱스 값은 1이아닌 0에서부터 시작한다.

* len = sizeof(arr) / sizeof(int); 

sizeof 연산자를 이용해 배열의 길이를 알아낼 수 있다. 이때, sizeof 연산의 결과로는 바이트단위의 배열크기가 반환된다.

(따라서 길이를 알고싶다면 자료형의 사이즈로 나눠줘야한다)


char형 배열의 문자열 저장과 null 문자


char str [14] = "Good Morning!"; // 큰따옴표를 이용해서 문자열을 표현 (작은따옴표는 문자)

문자열 끝에는 \0(널문자) 라는 특수문자가 자동으로 설정되기때문에 , \0이 저장될 공간까지 고려해서 길이를 결정해야한다. 널문자의 아스키코드값은 0이다. C언어에서 널문자가 없으면 문자열이아니다. 반대로말하면 문자열의 선언방법에 관계없이 널문자가 마지막에 존재하면 문자열인것이다.


scanf 함수를 이용한 문자열의 입력


printf 함수를 이용하여 문자열을 출력할때 %s 서식문자를 사용하는것과 마찬가지로 scanf 함수를 이용하여 문자열을 입력할때도 %s 서식문자를 이용한다. 이때, 입력받을 대상에는 &연산자를 사용하지 않는다.


scanf 함수의 문자열 입력특성 - scnaf 함수의 데이터 구분기준은 공백이므로 , 만약 he is my friend 라는 문자열을 입력했을때 , he 만 입력되게된다. 따라서 scanf 함수는 문장을 입력받기엔 적절치 않다.




'C언어 > 열혈C' 카테고리의 다른 글

C : Chapter -11 포인터와 배열  (0) 2018.03.22
C : Chapter-10 포인터  (0) 2018.03.22
C : Chapter -8 함수  (0) 2018.03.19
C : Chapter -7 조건문  (0) 2018.03.19
C : Chapter -6 반복문  (0) 2018.03.19

+ Recent posts