[c++] c++ 입문③ - 변수를 정복하자!
- 컴퓨터공학과/Programming
- 2011. 7. 27.
C++ 헤쳐나가기 시리즈
[c++] c++ 입문① - 친밀도 높이기(사람 관점에서 컴퓨터 언어 바라보기)
[c++] c++ 입문② - 첫 프로그래밍, 희열을 느껴보자
변수
지정된 데이터 유형의 정보를 보관하는 기억 장소
특징
- 데이터나 계산 결과를 저장하는데 사용
- 변수의 유형을 지정
- 사용되기 전에 선언되어야함
변수이름 규약
- 변수 이름 길이는 제한 없으며, 대소문자를 구별
- 변수 이름은 _,영문자(A~Z, a~z), 숫자(0~9)를 사용하여 작성되고 이름의 시작은 문자나 _를 사용함
- 단순히 x, y 같은 이름을 사용하기보다 의미 있는 단어를 이름으로 사용할 것
예) radius, area, commission, interestRate, interest_rate
- 키워드는 이름으로 사용 불가
* 키워드(=예약어): c++에서 미리 정의하여 사용하는 단어 ex) bool, char, const, enum
변수 선언
- 선언을 통해, 컴파일러에게 사용하려는 데이터 유형의 크기만큼의 메모리 공간을 할당하는 행위
// 변수선언 방식
데이터타입 변수이름;
double number; // double형 크기만큼 메모리를 number라는 변수에게 할당
- 변수는 사용하기 전에 초기화하는 것이 좋음(초기값이 없는 경우 결과 예측이 어려움)
* 전역변수 초기값 : 0, 지역변수 초기값 : 쓰레기값
* 변수 유형에 따라 초기화 상태가 달라지지만 초기화하는 습관을 들이는 것이 좋음!
// 변수 유형은 double이고, 변수 이름은 number이며, 변수 초기값은 10이다.
// 변수를 선언하면 메모리에서는 number라는 double 크기의 임시 공간을 만들고 number에 10을 기억시킴
double number;
number = 10;
→ 변수의 데이터 유형은 double 형이고 변수 이름은 number이며 변수 초기값은 10이다.
→ 변수를 선언하면 메모리에서는 number라는 double 크기의 임시 공간을 만들고 number에 10을 기억시킴
// 1)변수 선언 및 2)초기화 동시 수행 가능
double number = 10;
→ 변수 선언과 초기화를 한번에
// 변수의 데이터 유형이 같다면 한꺼번에 선언 가능
int a, b, ..., z;
→ 변수의 데이터 유형이 같다면 여러 개의 변수를 한번에 선언 가능
키보드로부터 읽기(런타임시 변수값 지정)
std::cin 객체를 사용해서 키보드로부터 값을 읽어들여 사용이 가능하다
double number;
std::cout << "숫자 값을 입력해주세요: " << endl; // 사용자에게 입력하도록 유도
std::cin >> number; // 화면 입력받아 변수에 저장
→ 사용자에게 숫자를 입력받아 입력값을 변수에 저장하여 최종적으로 사용자가 입력한 값은 number 변수에 기억된다
- cout : 화면 출력(console out)으로 프롬프트를 이용하여 사용자에게 입력을 유도
- cin : 화면입력(console in)
- >> : 스트림 추출 연산자, 입력 내용을 변수에 저장
* 여러 변수값 한번에 읽기
std::cin >> x >> y >> z;
- 위와 같이 >>를 연결하여 하나의 문장에서 여러 변수값을 읽어들일 수 있음
- 사용자는 차례대로 공백을 띄워 입력하고 엔터키를 누르면 입력이 완성
Namespace 이름공간
- 영희야! 하고 함수를 호출하는데 이 영희가 딸기초등학교 소속인지 개미초등학교 소속인지 알 수가 없다.
→ C++에서는 이와같은 잠재적인 명명 문제를 해결하기 위해 모든 이름에 네임스페이스를 부여한다. std::cout이라는 것은 cout이라는 함수의 소속이 std라는 네임스페이스에 속한다는 것을 의미한다. 즉, 객체들이 어느 소속인지를 알려주는 것이다.
★그러나 std::를 계속 해서 쓰는 것은 번거로운 일이다. 따라서 초반에 using namespace 키워드를 사용하여 소속공간을 명시할 수 있다.
using namespace std;
→ 명시적인 네임스페이스 지시자를 사용하지 않아도 std 네임스페이스로 간주하라는 의미이다.
→ using namespace std; 를 이용하여 명시적 네임스페이스 지시자를 사용하지 않아도 cout과 cin이 std:: 네임스페이스로 간주된다.
using namespace std;
...
double number; // double 유형의 number 변수를 선언
cout << "enter a number: "; // number 값을 입력하라고 알려주는 프롬프트
cin >> number; // 사용자가 입력한 값이 저장된다.
프로그래밍
파운드를 킬로그램으로 변환하는 프로그램을 만들어보자
#include <iostream>
using namespace std;
int main()
{
double pound = 0, kilogram = 0;
cout << "Enter a pound : " ;
cin >> pound;
kilogram = 0.454 * pound;
cout << pound << "pound is " << kilogram << "kilogram." << endl;
return 0;
}
'컴퓨터공학과 > Programming' 카테고리의 다른 글
[JSP] 개발환경구축 - ③ Eclipse 설치 (0) | 2012.07.15 |
---|---|
[JSP] 개발환경구축 - ② Tomcat 설치 (1) | 2012.07.13 |
[c++] c++입문④ - 상수/리터럴 (0) | 2011.07.28 |
[c++] c++ 입문② - 첫 프로그래밍, 희열을 느껴보자 (0) | 2011.07.26 |
[c++] c++ 입문 ① - 친밀도 높이기(사람 관점에서 컴퓨터 언어 바라보기) (0) | 2011.07.26 |