구조체(Structure) 구조체란 여러 개의 서로 다른 변수들의 집합을 말한다. 이 때 묶이는 서로 다른 변수들은 자료형에 상관하지 않는다. 구조체의 유용성은 하나의 상태를 나타낼 수 있는 여러 데이터를 하나로 묶어서 사용하는 것이다. 예를 들어, 주소는 이름, 도, 시, 구/군 등등으로 이루어져 있고 이것을 하나로 묶.. C 언어 개열/C 언어 2010.08.22
포인터(Pointer) 변수 포인터와 포인터 변수는 같은 말로 포인터 변수는 메모리 주소를 저장하기 위한 변수이다. 포인터를 적절하게 사용하기 위해서는 기본적으로 두 개의 특별한 포인터 연산자들을 이해해야 한다. & 연산자 : 자신의 피연산자의 메모리 주소를 리턴하는 단항 연산자로 주소 연산자라고 함. * 연산자 : 선.. C 언어 개열/C 언어 2010.08.21
register 변수 register 변수를 이용하면 변수의 값이 CPU에 저장되며 변수의 값을 결정하거나 수정하기 위한 메모리 접근이 필요하지 않기 때문에, 보통의 변수들을 사용하는 것보다 빠르게 수행한다. register 변수를 사용할 때는 지역변수이고 빠른 계산이 필요한 경우에 사용한다. #include <stdio.h> int main(void) { regist.. C 언어 개열/C 언어 2010.08.21
재귀함수(Recursive Function) 재귀함수란 자기 자신을 다시 호출하는 형태의 함수를 말한다. 재귀함수가 중요한 이유는 자료구조나 알고리즘에서 자주 사용되기 때문이다. 재귀함수의 가장 중요한 요소는 무한 재귀 호출을 피하기 위해서 탈출 조건이 명확해야 한다. 재귀 함수의 기본적 구조는 다음과 같다. void recursive() { printf(" .. C 언어 개열/C 언어 2010.08.21
printf 함수와 scanf 함수 printf 함수 표준 출력 함수로 출력 서식을 지정할 수 있다. printf 함수는 특수 문자열를 가지고 잇는데 특수 문자열을 다음과 같다. \a 경고음 소리 발생 \b 백스페이스(Backspace) \f 폼 피드(form feed) \n 개행 \r 캐리지 리턴(Carriage return) \t 수평탭 \v 수직탭 \\ 백슬래시 \' 작은 따옴표 \" 큰 따옴표 또한, printf .. C 언어 개열/C 언어 2010.08.21
C언어의 함수 함수란 적절한 입력과 그에 따른 출력이 존재하는 것을 말한다. C언어의 프로그램 기본 단위는 함수이다. 객체 지향 언어의 프로그램 기본 단위가 객체(클래스) 임에 반해, C언어는 절차적 언어이기 때문에 입력과 출력이 존재하며, 순차적으로 실행되는 특성을 가지고 있어 함수를 기본 단위로 한다. .. C 언어 개열/C 언어 2010.08.21
포인터(Pointer) 변수와 레퍼런스(Reference) 변수의 이해 포인터란 메모리의 주소를 가리키는 변수로 32비트 환경에서 4바이트의 크기를 가진다. 포인터는 주소(Address)와 타입(Type)으로 구성되며 특별한 연산자를 사용하여 접근한다. 포인터 연산자 * (Dereference Operator) & (Address of Operator) 포인터를 사용하면 메모리에 접근하는 프로그래밍이 가능하기 때문에 Low-.. C 언어 개열/C++ 2010.08.19
const 키워드와 메모리 영역 const 키워드 const 키워드로 선언하는 변수는 선언과 동시에 값을 할당해야 하며, 값을 할당한 후에는 읽기만 가능하고 값을 변경할 수는 변수가 된다. const int n = 10; const int * n; // 데이터 상수화, 포인터를 통해 데이터를 변경하는 것을 막음 int * const n; // 포인터 상수화, 포인터 값을 변경하는 것을 막음.. C 언어 개열/C++ 2010.08.19
using 키워드와 전역변수 접근방법 using 키워드 using 키워드는 namespace 로 선언된 부분의 함수나 변수에 접근할 때 좀 더 쉽게 접근하기 위한 방법을 제공하는데 사용법은 다음과 같다. using a::function; using namespace a; using a:function 은 namespace a 안에 있는 function 함수를 호출할 때 그냥 function 이라는 이름만으로 호출하겠다라는 뜻. using namespace.. C 언어 개열/C++ 2010.08.19
이름공간(Namespace) 이름공간은 프로그램 소스 코드에 이름을 부여하는 방법이다. 아래와 같이 함수명이 같은 함수가 복수로 있다면 컴파일러 오류가 발생한다. #include <iostream> int fun() { return 10; } int fun() { return 20; } int main() { std::cout << fun() << std::endl; return 0; } 같은 이름의 함수를 사용했기 때문에 컴파일러 .. C 언어 개열/C++ 2010.08.19