본문 바로가기

C언어 다시 다지기

DAY003 변수의 선언

난이도 : ☆☆☆☆

■ 변수의 선언


C언어에서 변수를 사용하려면 선언을 해야하며, 변수를 선언하는 위치에 따라 전역 변수와 지역 변수로 구분됩니다. 전역 변수는 프로그램에서 전반적으로 사용해야 할 때 사용하며, 지역 변수는 특정 함수내에서만 사용됩니다. 변수를 선언하려면 다음과 같은 규칙을 따라야 합니다.


 데이터형 변수 이름;


데이터형은 char, int, long등을 사용하면 되고, 변수 이름은 앞에서 설명했던 변수명 선언 규칙을 따라야 합니다. 이 규칙에 따라 다음과 같이 변수를 선언할 수 있습니다.


1
2
int total ;          /*정수형 변수 선언*/
double average;      /*실수형 변수 선언*/


데이터형은 사용하려는 숫자 변수의 범위 및 용도에 맞게 사용하면 됩니다. total은 합계를 구하는 것이므로 정수형 변수를 사용하는 것이 좋으면, 평균(average)은 소수점이 있을 수 있으므로 실수형 변수를 사용하는 것이 좋습니다.


변수를 선언할 때 다음과 같이 데이터형이 같은 경우는 한 줄에 선언할 수 있습니다.


1
2
3
4
int i;               /* i를 선언 */
int j;               /* j를 선언 */
int k;               /* k를 선언 */
int i, j, k;         /* i, j, k를 한 줄에 선언*/


▶▶변수의 범위 : 지역변수와 전역변수


변수는 선언되는 위치에 따라 전역 변수와 지역 변수로 나눌 수 있습니다. 전역변수는 모든 함수에서 선언해야 할 때 사용하며, 지역 변수는 특정 함수 내에서만 사용할 때 선언합니다. 다음과 같이 value라는 변수를 선언한다면,


1
2
3
4
5
6
7
8
9
10
11
int value;           /*전역 변수, 전역에서 사용 */
 
void main()
{
    value = 100;
}
 
void func()
{
    value = 200;
}


value는 전역 변수가 됩니다. 전역 변수로 선언되면 위의 코드와 같이 main( )함수 또는 func( ) 함수 어느 곳에서나 쉽게 이 변수를 접근해서 사용할 수 있습니다. 만약 value가 다음처럼 지역 변수로 선언된다면,


1
2
3
4
5
void main()
{
    int value;       /*지역변수, main( ) 함수에서만 사용*/
    value = 100;
}


func( ) 함수에서는 더 이상 value 변수에 접근할 수 없습니다. value는 main( ) 함수 또는 func( ) 함수에서만 사용이 가능합니다.


변수 선언할 때 주의해야 할 것이 하나 있는데, 같은 이름의 변수일 경우는 지역 변수가 우선순위가 높다는 것입니다. 다음과 같이 value가 전역 및 지역에 동시에 선언될 경우, main( ) 함수에서 사용한 value는 지역 변수 value입니다.


1
2
3
4
5
6
int value;        /* 전역 변수, 모든 함수에서 사용 */
void main()
{
    int value;    /*지역변수, main( ) 함수에서만 사용 */
    value = 100;  /* 지역변수, value에 100을 대입 */
}


'C언어 다시 다지기' 카테고리의 다른 글

DAY004 변수의 초기화  (0) 2018.04.30
DAY002 숫자를 저장하는 변수  (0) 2018.04.26
DAY001 변수란?  (0) 2018.04.17
C의 기본적 지식(2)  (0) 2018.03.14
C의 기본적 지식(1)  (0) 2018.03.11