* 변수 이름 규칙
- 변수 이름에는 영문자, 숫자, 밑줄(_) 만을 사용할 수 있다.
- 변수 이름의 첫 문자로 숫자는 올 수 없다.
- 변수 이름의 첫 문자로 밑줄이 두 개 오는 것은 컴파일러와 리소스가 사용하는것으로 예약 되어있다.
- 대문자와 소문자를 구별한다.
- 키워드는 변수 이름으로 사용할 수 없다.
- 이름의 길이는 제한이 없다. (단, ANSI C에서는 63번째 문자까지만 구별한다.)

 * 정수형 변수 short, int, long
- short형은 최소한 16비트 폭을 가진다.
- int형은 최소한 short만큼은 크다.
- long형은 최소한 32비트 폭을 가지며, 최소한 int만큼은 크다.

- sizeof 연산자를 데이터형 이름에 사용할 때에는 괄호를 사용해야 하지만, 변수 이름에 사용할 때에는 괄호가 없어도 상관없다.

 *진수의 표현
- 8진수는 0을, 16진수는 0x 또는 0X를 붙여서 10진수와 구별한다.
- cout은 기본으로 10진수로 출력하며, dec/oct/hex 조정자를 제공한다. 조정자로 인하여 바뀐 출력 형태는 다시 조정자를 쓸 때까지 그대로 유지된다.

- cout은 char형 변수를 자동으로 문자로 출력한다. 하지만 char형 변수 자체의 값은 정수이기 때문에, 연산을 할 수 있다. char형 변수에 저장되어 있는 정수를 보려면 printf를 사용하거나 int형에 대입시킨 다음 출력하면 된다.

- 1바이트로 표현할 수 없는 문자 세트를 처리할 때, 데이터 타입으로 wchar_t 를 쓰고, 해당 문자 앞(따옴표 앞)에 L을 붙인다.

- 키워드 const를 사용하여 변수를 상수로 만들수 있고, 이것은 안정적인 프로그래밍을 가능하게 한다.

- 부동소수형 변수는 소수부가 있는 수, 매우 큰 수, 매우 작은 수를 나타낼 수 있다.

- 부동소수형 변수의 연산은 정수형 연산보다 느리고, 정밀도가 떨어진다.

- 정수형과 부동소수형을 합쳐서 산술형 이라고 부른다.

 * 산술 연산자
- 하나의 피연산자에 두 개의 연산자가 앞,뒤로 있을 경우, 우선순위가 높은 연산자가 먼저 연산된다.
 만약 우선순위가 같은 연산자가 있으면, 결합 방향 규칙에 따라 순서가 정해진다.
- %연산자는 피연산자로 정수만 올 수 있다.
- /연산자는 피연산자 모두 정수이면 정수 나눗셈을, 둘 중 하나라도 소수이면 소수 나눗셈을 한다.

 * 데이터형 변환
- 대입 명령문에서 대입되는 값은 해당 변수의 타입으로 변환된다.
- 강제 형 변환에서는 소수부의 손실이나 값의 변조가 일어날 수 있다.



'학부 전공 > C++' 카테고리의 다른 글

2. C++ 시작하기  (0) 2010.07.19
1. C++ 첫걸음  (0) 2010.07.19

- 일반적으로 main함수는 컴파일러가 프로그램에 추가하는 시동 코드에 의해 호출된다.

- 함수에서 리턴형을 void로 할 경우, C++ 표준이 아니므로 어떤 시스템에서는 동작하지 않을 수 있다.

- 컴파일러가 리턴 명령문을 만나지 못한 채 main()의 끝에 도달하면 자동으로 return 0; 과 동일하게 동작한다.

 * Name Space
- name space는 C++의 새로운 기능이다. 이것은 프로그램을 작성할 때, 같은 이름의 함수가 존재할 때, 선택할 수 있게 한다.
using namespace std; 
이것은 C++ 컴파일러의 표준 구성 요소를 쓸 수 있게 하는 것이다.

- using 지시자는 필요한 것들만 개별적으로 선언하여 쓸 수도 있다.
using std::cout;
using std::cin;
using std::endl;

 * 조정자(manipulator) endl
- cout에 대해 특수한 의미를 지니는 키워드를 조정자라고 부른다.
- endl은 개행문자인 \n과 같은 동작을 한다.

 * 소스 코드의 모양
- 코드에서 더 이상 분리할 수 없는 기본 요소를 토큰(token)이라 한다.
- 토큰들끼리는 빈칸, 탭, 캐리지 리턴에 의하여 구분되는데 이 세 가지를 white space라 한다.
- white space는 토큰 사이사이에 얼마든지 들어가도 되지만, 코드의 가독성을 생각해야 한다.

 * 명령문
- C에서는 변수의 선언을 함수의 시작 위치에 선언해야 하지만, C++에서는 사용되기 전이라면 어디에서든지 선언해도 된다. 
- cout/cin은 연산자 오버로딩 된 객체이기 때문에, 어떤 데이터형이든지 구별않고 출력/입력할 수 있다.

- 클래스는 데이터 형식의 모든 속성을 서술한 것이고, 객체는 그 서술에 따라 실제로 생성된 구체물이다.

- C++ 프로그램은 함수라고 부르는 모듈들로 이루어진다.



'학부 전공 > C++' 카테고리의 다른 글

3. 데이터 처리  (0) 2010.07.21
1. C++ 첫걸음  (0) 2010.07.19


- C++은 절차적 언어 방식, 객체 지향 언어 방식, 일반화 프로그래밍 방식을 하나로 결합한다.

- FORTRAN이나 BASIC은 초기의 절차적 언어이다. 프로그램이 스파게티처럼 꼬여있어서 코드를 파악하고 수정하는 것이 어려웠다.
- C언어에서는 구조적 프로그래밍 언어이다. 정형화된 분기문을 사용하도록 되어있었고, 하향식 설계(모듈화)를 지향했다. 
- C++ 은 객체 지향 프로그래밍 언어이다. 클래스를 사용하여 알고리즘보다 데이터를 더 중시한다.

 *객체 지향 프로그래밍(Object-Oriented Programming)
- 절차적 프로그래밍은 알고리즘을 강조하지만, 객체 지향 프로그래밍은 데이터를 강조한다.
- 문제를 언어의 절차적 방식에 끼워맞추지 않고, 언어 자체를 문제에 맞춰서 설계한다.
- 클래스는 그것을 위한 새로운 데이터형이고, 객체는 클래스에 의해 만들어지는 특정한 구조이다.
- 클래스는 객체를 나타내는 데이터 부분과, 데이터를 대상을 수행할 수 있는 동작 부분으로 정의된다.

- OOP는 코드를 쉽게 재활용 할 수 있고, 정보를 은닉할 수 있다. 문제를 쪼개는 하향식이 아니라, 클래스부터 시작하여 문제를 완성해 나가는 상향식 프로그래밍이다.

- 프로그램 코드를 수정하지 않고 다시 컴파일하여 새로운 플랫폼에서 프로그램이 잘 작동한다면, 그 프로그램은 이식성이 있다고 말한다.

- 프로그램의 마지막에 cin.get();을 넣으면 실행시에 사용자가 enter를 누르기를 기다린다.






'학부 전공 > C++' 카테고리의 다른 글

3. 데이터 처리  (0) 2010.07.21
2. C++ 시작하기  (0) 2010.07.19

+ Recent posts