1)데이터 타입
DataType = 가능한 값과 연산의 유형
기본데이터 유형(primitive type) : 정수형, 실수형, character, Boolean, 열거형
복합데이터 유형(derived type) : Record, string , pointer, array
2)Array
배열
동일한 데이터 원소의 집합
C언어에서의 문자열 ) 문자 배열 , 마지막 원소 =\0 , 배열 = 첫번째 원소의 주소
C언어에서의 포인터 배열 ) 주소 여러개 저장
ex) const *name[] = {"Kim", "Lee"}; -> name[0] = 'K' 첫글자의 주소값 저장
3)String -Record
[String]
배정 (A=B) : strcpy(target, source)
접속 (A= A+B) : strcat(A,B) A=결과
비교 : strcmp(str1, str2) 결과=0일 경우 str1=str2 의미
[Record]
4)Pointer
다른 데이터를 가리키는 데이터
동적 데이터 구조 : linked list, tree등에 활용 , 실행 전에 데이터 크기 알 수 없는 경우
동적 할당, 역참조 (ip -> *ip)
Cast 연산 : 기억장소를 할당하여 포인터에 대입할 때
(int *) = 정수를 저장하는 곳을 의미
배열 이름 = 포인터 상수 = 주소값(배열의 시작 주소 저장)
포인터 변수의 문제점 ) 허상 참조 = 의미 없는 변수를 가리키는 포인터
in JAVA ) 포인터가 없음
묵시적 : object, array 활용
변수 2가지로 사용
속성 변수 : 변수의 값을 저장 ,Integer/real ...
참조 변수 : 변수의 주소 값을 저장 , Object, string, array
5)자료형 일치/호환성