국비지원 학원 - JAVA기반 스마트앱 개발2021/프로그래밍 언어활용
함수의 인자
함수의 인자
2021.07.31학습내용 매개변수 다양한 인자 전달 학습목표 함수의 매개변수 전달 방법에 대해 설명할 수 있다. 매개변수로 포인터, 배열, 구조체 등을 전달하는 방법을 알고 사용할 수 있다. 매개변수 1. 개념 이해 함수에 전달하는 값 [매개변수(Parameter), 인자(Argument)] --> 함수 호출 시 함수로 값을 전달하는 목적으로 이용 형식매개변수와 실매개변수 형식매개변수(Fomal Parameter) 실매개변수(Real Parameter) 함수 정의에서 기술되는 매개변수 목록 함수 호출에서 기술되는 값, 인자(Argument) 2. 호출방식 Call by Value(값에 의한 호출) - 인자의 값을 함수 정의에 있는 매개변수로 복사해서 전달하는 방식 call by Reference(참조에 의한 호출) - ..
공용체와 열거체
공용체와 열거체
2021.07.31학습내용 공용체 열거체 학습목표 공용체의 개념을 알고 구현할 수 있다. 열거체의 용도를 알고 코드에 적용할 수 있다. 공용체 1. 공용체 활용 동일한 저장 장소에 여러 데이터 타입을 저장하는 자료구조 1) 멤버들이 메모리를 공유해서 사용하는 기법 2) 공용체의 크기는 공용체의 멤버 중 가장 크기가 큰 멤버에 의해 결정 - 공용체 변수를 초기화할 때는 첫 번째 멤버의 초기값만 지정 - 공용체의 멤버에 접근할 때도 '.'와 '->' 연산자를 사용함 - 구조체와 공용체 비교 2. 비트필드 1) 구조체가 가진 멤버를 비트 단위로 사용 2) 비트필드 정의 3) 메모리에 할당할 때, 첫 번째 멤버를 최하위 비트에서부터 할당 4) 비트필드의 멤버에 표현 가능한 범위 밖의 값을 저장하면 오버플로우가 발생 5) 비트필드..
구조체
구조체
2021.07.30학습내용 구조체 이해 구조체 처리 학습목표 구조체가 무엇인지 알고 용도를 설명할 수 있다. 구조체를 용도에 맞게 정의하고 선언할 수 있다. 구조체 이해 1. 구조체란? 1) 사용자 정의 데이터 타입 2) 관련 있는 데이터를 묶어서 처리할 수 있는 자료구조 3) 서로 다른 데이터 타입의 묶음 4) 서로 다른 데이터 타입을 묶어서 처리할 수 있도록 사용자가 정의하는 데이터 타입 2. 구조체 정의방법 1) 구조체의 멤버로 일반 변수뿐만 아니라 배열이나 포인터 선언가능 2) 구조체를 정의하면 새로운 데이터형이 만들어짐 3) 구조체 정의 -> 메모리 할당의 의미는 아님 4) 구조체형 변수 선언 -> 메모리에 할당 5) 구조체의 크기는 모든 멤버들의 크기의 합보다 크거나 같음 6) 구조체 멤버 중 가장 큰 멤버의 ..
포인터와 문자열
포인터와 문자열
2021.07.30학습내용 포인터 배열 배열 포인터 학습목표 2차원 배열과 포인터 배열에 대해 설명할 수 있다. 포인터를 이용하여 문자열을 처리할 수 있다. 배열 포인터의 개념과 용도에 대해 설명할 수 있다. 포인터와 배열 1. 2차원 배열과 포인터 str[3][10] : str = str[0] = &str[0][0] 2. 문자형 포인터 문자열 상수를 문자형 포인터 변수에 저장 배열 포인터 1. 배열 포인터 개요 배열 포인터는 이차원 배열의 전체를 가리키는 용도로 사용 형식 : 데이터형 (*포인터명) [배열 크기]; 1) 배열 포인터를 &arr[0]으로 초기화하는 대신, 간단하게 arr로 초기화 가능 int (*p) [5] = arr; -----------> arr는 &arr[0]과 같은 의미임 2) 배열 포인터 p로 2..
포인터 활용
포인터 활용
2021.07.28학습내용 포인터와 배열 포인터 연산 학습목표 포인터와 배열의 관계에 대해 설명할 수 있다. 포인터를 이용한 연산을 사용할 수 있다. 포인터와 배열 1. 포인터로 배열 참조 배열명 : 배열의 시작 주소를 의미하는 상수 1) 배열의 시작 주소를 구할 때는 & 없이 배열명만 사용 2) 배열명을 포인터처럼 사용 가능 - 인덱스를 사용하는 대신 배열의 시작 주소로 포인터 연산을 하면 배열의 특정 원소에 접근 가능 3) * (arr + i)는 arr[i]를 의미 - 배열의 시작 주소에서 데이터 타입 i개 크기만큼 증가된 주소에 있는 값 4) 배열의 시작 주소로 초기화된 포인터를 이용해서 배열의 모든 원소에 접근 가능 5) 포인터 변수를 배열 이름인 것처럼 사용 가능 6) 포인터와 +, - 연산 - p + N : p..
포인터 기초
포인터 기초
2021.07.28학습내용 포인터 이해 포인터 이용 학습목표 포인터의 개념에 대해 설명할 수 있다. 포인터 변수를 이용하여 데이터 변수값을 참조할 수 있다. 포인터 이해 1. 포인터 개념 포인터 : 특정 위치를 가리키는 주소 정보 포인터 변수 : 포인터(주소)를 저장하는 변수 * 포인터 변수의 크기(주소의 크기)는 일반적으로 4바이트이지만 시스템에 따라 다름 * 2. 포인터 변수 포인터 변수의 데이터 타입은 포인팅하는 변수의 데이터 타입과 동일한 타입으로 선언 char* : char형 변수의 주소 저장 int* : int형 변수의 주소 저장 double* : double형 변수의 주소 저장 3. 포인터 초기화 & : 주소 구하기 연산자 &데이터 변수 : 변수의 주소를 의미 *포인터 변수 : 포인터 변수가 가리키는 주소의 ..
문자열
문자열
2021.07.28학습내용 문자열 이해 문자열 입출력 학습목표 문자열의 정의에 대해 설명할 수 있다. 표준입출력을 통한 문자열 처리를 구현할 수 있다. 문자열 이해 1. 문자열 기초 문자열 : 연속된 문자들의 모임 문자열은 큰 따옴표(" ")로 표현함 문자열의 끝에는 널(null)문자('\0')를 함께 저장함 1) 문자열 상수 : 값이 변경되지 않는 문자열 "A"나 "Hello World" 등 문자열 리터럴이라고도 함 2) 문자열 변수 : 프로그램 수행 중에 변경될 수 있는 문자열 문자배열 2. 문자열 선언과 초기화 선언 : 문자 배열의 크기는 저장할 문자 수+1 크기로 지정 초기화 : " " 문자를 대입연산자에 이용 문자열 입출력 1. 문자열 표준 입력 1) scanf( ) - 입력된 문자열을 str 배열에 저장 - 공..
배열
배열
2021.07.27학습내용 선언과 초기화 다차원 배열 학습목표 배열의 용도를 알고, 배열을 초기화하여 자료처리에 사용할 수 있다. 다차원 배열의 개념에 대해 설명할 수 있다. 선언과 초기화 1. 배열 이해 1) 고급언어와 저급언어의 특징 - 동일한 이름으로 참조되는 연속된 메모리에 할당된 자료 구조 - 같은 데이터 타입을 묶어서 하나의 공간처럼 사용할 수 있는 자료 구조 * 관련 있는 데이터를 묶어서 처리할 필요가 있을 때 유용한 자료 구조 2) 효과 - 많은 수의 변수 이름을 생성할 필요가 없음 - 동일한 이름을 사용하므로 반복문으로 구현하기가 용이함 3) 용어 - 요소(Elements) : 배열을 구성하는 각 항목 - 배열(Array)명 : 전체 공간에 대한 대표 이름(변수명) - 크기 : 배열요소의 개수 - 첨자(I..