본문 바로가기
C언어

야메 C언어 강좌: 3. 주석과 변수

by 케찹이 2020. 4. 19.

우리가 굉장히 어려운 수학문제를 풀때 선생님께서 풀이를 가르켜주셨을 때는 이해하기 쉬웠지만 몇일이 흐르고 다시 그 풀이를 봤을 때 한번에 다시 이해하는 것은 굉장히 어렵습니다. 코드도 마찬가지입니다. 처음에 내가 썼던 코드들을 몇시간 몇일 뒤에 봤을 때에 한번에 이해하기에는 굉장히 어렵습니다. 그래서 여러분들이 수업때에 필기를 작성하는 것처럼 여러분의 코드 옆에 해당 코드에 대한 설명을 작성할 수 있습니다. 마치 밑코드 처럼 말이죠. 

#include<stdio.h>		//stdio.h라는 라이브러리 포함 
int main(){
	printf("Hello, World!");  //printf는 출력함수
    return 0;				  //코드 종료
}

코드 오른쪽에 저번에 배웠던 내용들을 적어놨습니다. 이러한 설명들을 우린 주석이라고 부릅니다.

주석은 //를 적고 뒤에 주석의 내용들을 적으면 되겠습니다. 참고로 주석은 컴파일러가 무시하고 진행하기 때문에 원래의 코드에는 영향을 끼치지 않습니다. 

//는 한문장을 주석처리 할 수 있고 /**/를 사용하게 되면 *과*사이의 코드들이 주석처리가 됩니다. 

#include<stdio.h>
int main(){
/*
	이곳에 있는 부분들은 
    모두 주석처리가 됩니다. 
    int main()
    절대로 컴파일러가 무시합니다.
*/
	printf("Hello, World!);
    return 0;
}

지금은 몇줄 안되는 코드를 작성하지만 앞으로 여러분은 수백 수천줄이 되는 코드들이 작성될 것입니다. 그러니 주석처리를 꼭 습관화시킵시다:)

 

////////////////////////////////////////////////

 

자 그럼 변수라는 것을 배워보도록합시다. 변수라는 것은 값이 바뀌는 수를 저장할 수 있는 공간이라고 할 수있겠군요. 사실 우리가 앞서 보았던 int가 변수 중에 하나입니다. 그럼 예시를 통해서 조금 쉽게 변수에 대해서 알아보도록 하겠습니다. 

#include<stdio.h>
int main(){
	int a;
	a = 123;
	printf("a의 값은 %d입니다 \n",a);
}

파일 컴파일을 하게 된다면 

a의 값은 123입니다

위 처럼 나타날 것입니다. 그럼 하나하나씩 알아보도록 하겠습니다. 

int a;

이 코드는 a라는 정수형 변수입니다. 다시 말해 a는 변수의 이름이고 int는 정수를 저장할 수 있는 변수의 일종입니다. 다시 말해 이 코드는 컴파일러에게 우리는 a라는 int형 변수를 사용한다 라고 전달해준것이라고 할 수 있습니다. 자 그럼 int가 변수의 일종이라고 했는데 다른 변수의 종류들도 살펴보도록 하겠습니다. 

 

위 사진을 살펴보면 정말 다양한 변수들이 있다는 걸 알 수 있는데 조금 더 살펴보면 왜 변수의 종류가 이토록 다양한지 알 수 있습니다. 바로 각 변수에는 표현할 수 있는 숫자들이 정해져있습니다. 우리가 살펴본 int형 변수는 -2147483648 ~ 2147483647까지의 숫자를 저장할 수 있습니다. 그럼 여기서 또다른 질문이 있을 수 있습니다. 그럼 애초부터 제일 큰 범위의 변수를 사용하면 되지 않나?하는 질문을 할 수도 있습니다. 처음부터 범위가 제일 넓은 변수를 사용하면 사용자의 입장에선 편할 수도 있겠지만 컴퓨터는 많은 양의 메모리를 사용할 수록 컴퓨터는 벅차한다라고 일단 설명을 하겠습니다. 마치 우리가 용량이 아주 큰 게임을 하면 컴퓨터가 뜨거워지고 이상한 소리를 내는 것처럼 우리가 작성한 코드를 무겁게 할수록 컴퓨터는 버거워한다는 것을 여러분들이 알아뒀으면 좋겠습니다. (이에 관한 구체적인 설명인 차차 설명하도록 하겠습니다.)

 

또 여기서 살펴볼건 제가 int변수는 정수형 변수라고 했습니다. 정수형 변수가 있다면 실수형 변수도 존재하겠죠. 그럼 정수형 변수와 실수형 변수를 나열해보도록 하겠습니다. 

 

정수: char, short, int

실수: long, double, long double 

이렇게가 자주 사용하는 변수입니다. 그럼 몇가지 코드들로 각 변수들의 사용법들을 살펴보도록 하겠습니다. 

 

#include<stdio.h>
int main(){
	char a;			
	short b;
	int c;
	
	a = 127;
	b = 1000;
	c = 2000;
	printf("a의 값은 %d입니다 \n",a);
	printf("b의 값은 %d입니다 \n",b);
	printf("c의 값은 %d입니다 \n",c);
    
    return 0;
}

이렇게 코드를 작성하시면 결과는 

a의 값은 123입니다
b의 값은 1000입니다
c의 값은 2000입니다

같이 출력되는 것을 확인하실 수 있습니다. 여기서 printf안에의 내용들을 주목할 필요가 있습니다. 

printf함수 안의 %d는 결국 a안에 있는 숫자를 출력하는 것을 확인할 수 있습니다. 이렇게 우리가 정수형 변수들을 출력할 때에는 " 안에 %d"를 작성하고 큰 따음표 밖에 쉼표을 적고 변수명을 적는 방식을 기억해두시길 바랍니다. 

 

그럼 실수형 변수들도 살펴보도록 하겠습니다. 

#include<stdio.h>
int main(){
	float a;			
	double b;
	
	a = 1.1111f;
	b = 2.2222;
	
	printf("a의 값은 %f입니다 \n",a);
	printf("b의 값은 %f입니다 \n",b);
	
	return 0;
}
a의 값은 1.1111입니다 
b의 값은 2.2222입니다

결과는 위와 같이 출력될 것입니다. 이번엔 float변수에 숫자를 저장할 때 끝에 f를 넣어야지 정상적으로 저장이 가능합니다. 그리고 이번에 printf함수 안에 %f를 써넣어 실수형 변수들을 출력합니다. 

 

여기까지 주석과 변수에 대한 설명이었습니다. 이해가 되지 않은 부분들은 꼭 댓글로 남겨주시고 항상 오늘 배운 내용으로 직접 자신만의 코드들을 작성해보시기 바라겠습니다. 

댓글