노무현 대통령 배너

Double-J's World

blog logo image

Double-J's World » Programming/C / C++

[C 박살내기] #3 변수?

Double-J | 2008. 7. 14. 11:05

아...정말 귀차니즘 포스팅이 또 돌아왔습니다.ㅎ;

아무래도 저는 정기적인 포스팅 체질이 아닌가봐요.ㅎ;

아~ 참고로 체계적인 Language공부를 하시고 싶은분은 아무래도 전문 클럽,카페나

책을 통해 배우시는 편이 훨씬 좋으실꺼에요~ 저는 그냥 프로그램 돌리면서

이정도 맥락이구나~~하는정도이니..^^;

두 번째 포스팅에 이어 세번째! 변수에 대해 알아 볼까 합니다.

변수(Variable)이란?? 일단 문맥적 뜻을 알아보면 (네이버 사전을 참고했습니다.^^)

사용자 삽입 이미지

사전적 의미는 위와 같습니다. '변하기 쉬운' 이란 뜻이죠 그리고 이걸 수학이나 컴퓨터 분야에서

명사로 '변수'라고 쓰는것이고요 말그대로 '변할 수 있는 수(data)' 입니다. Language에서는

숫자 뿐만아니라 문자나 문자열등이 들어가기도 합니다.

조금더 정리하자면 프로그래머가 메모리상의 일정공간을 무슨무슨 용도로 사용하겠다! 라고 지정하는것

입니다. 그것을 간단하게 변수 지정으로 사용할수 있는것이죠.^^

프로젝트 만드는 법은 다 아실꺼고 간단한 예제 프로그램을 보겠습니다.

사용자 삽입 이미지

(1) 부분은 변수 선언 부분 입니다. 변수를 사용하려면 먼저 선언부터 하셔야 합니다.

변수를 선언 하는 방법은 Data Type을 먼저 기술해주고 한칸 띄고 사용자가 사용할 변수 이름을

적어 주는것입니다. 첫번째 부분을 보시면 알겠지만 int i;Data Typeint 라는 것을 알 수 있고

변수 이름은 i 라는 것을 알 수 있습니다.

int 는 (integer,정수) 의 약자 입니다. 정수 형 값을 입력할때 쓰는 것이고 메모리상에 4Byte(32bit)의 공간을

사용자가 쓸 공간으로 잡아주게 됩니다. 그리고 이공간의 이름은 i 라고 해두는 것이죠

char 라는 Data Type (Character, 문자)의 약자 로 1Byte(8bit)크기의 문자 하나 를 입력 받을

공간을 할당해줍니다. 당연히 크기는 1Byte를 잡아주겠죠? 물론 이름은 c라는 이름을 가지고요..

(2) 부분은 변수에 특정값을 대입,할당 하는 부분입니다. 사용자가 만든 공간에

실제 들어갈 값 을 넣는 것이죠 .

한가지 짚고 넘어갈 것은 C Language의 특성중 하나는 기본적으로 위에서 아래로 차례대로

실행된다는 점입니다. 물론 제어문이나 분기문, 반복문등으로 순서가 바뀔수는 있지만

그것은 사용자가 일부로 프로그램의 흐름의 순서를 바꾸고 싶을때 사용하는것이고

별다른것이 없다면 일단 위에서 아래로! 입니다.

그러면 (1), (2) 를 실행하면서 변수상의 데이터가 바뀌는 것을 보겠습니다.

편의상 i, c의 크기를 같게 그렸지만 실제로 i의 크기는 c의 4배입니다.


사용자 삽입 이미지

위는  int i; 와 char c; 가 실행된 상황을 나타내어 보았습니다. 메모리상에 임의의 공간을

i라는 이름과 c라는 이름으로 지정해 준 것이죠

사용자 삽입 이미지

위는 i = 100; 과 c = 'a'; 가 실행된 상황을 보여줍니다. 할당문은 임의의 공간에 위와같이

실제 값을 넣어주게 됩니다.

사용자 삽입 이미지


다음은 i = 3; 이 실행된 상황입니다. 대입하려는곳에 임의의 다른 값이 있어도 이전 값은 삭제 해버리고

제일 나중에 실행된 할당문의 값이 저장되는 것이죠.

마지막 printf문은 어떻게 실행될까요? 다음과 같습니다.

사용자 삽입 이미지


일단 저번에도 설명드렸지만 printf는 큰따옴표 ("  ") 안에 있는 내용을

출력하는 함수라고 알려드렸습니다.

그안에 %d는 뒤의 변수의 내용을 10진수 형태로 출력해라. 라는 것이고

%c는 뒤의 변수의 내용을 문자 형태로 출력해라. 라는 것입니다.

대응되는 순서는 뒤에 기술된 변수의 순서대로 차례로 대응됩니다.

물론 쉼표( , ) 로 구분되어 있어야 합니다.

자 그러면 출력 내용을 예상 하실수 있으시겠죠?^^ 물론 벌써 돌려보신 분들도 계실겁니다.

사용자 삽입 이미지

위와 같이 나오네요. 아...그런데 뒤에 자동으로 붙은 Press any key to continue...이 문장이

바로 붙어서 지저분해 보이죠? 이럴때 어떻게 해야될까요?ㅎㅎ

이전 포스팅에 해답이 있습니다..뭐 너무 간단해서 알려드리는것도 별 의미가 없다는 ㅡ,.ㅡ

오늘은 간단히 여기까지 하겠습니다. 시간 나시는 분들은 변수 이름짓는 법이나

Data Type에 대해서 찾아보심도 괜찮을듯 싶습니다.^^





(go to top)