[c언어] 변수와 상수, 변수의 선언과 변수 선언의 규칙

C언어에서 제공하는 변수(Variable)에는 크게 정수형 변수(int, char, long)와 실수형 변수(float, double)로 나뉘어지고 이런 변수의 형태는 자료형 또는 데이터 타입(Data Type)이라고 합니다. 

상수(Constants)는 변하지 않는 값을 의미하고 사람으로 친다면 출생년도, 태어난 국가, 태어난 장소같이 변하지 않는 고정적인 수 예를 들어 원주율의 3.14와 같이 변하지 않는 수를 의미합니다.

변수(Variable)는 "변하기 쉬운"값을 의미하는데 대표적으로는 나이 입니다. 나이는 2020년 29살이라면 2021년에는 30살이 되어지게 되기 때문에 나이 처럼 값이 바뀌게 되어지는 데이터를 의미합니다.

 

변수의 선언 방법은 변수를 선언할 이름과 선언할 변수앞에 변수의 데이터 타입(자료형)을 선언해주면 됩니다.

위에 정부에서 나이에 대한 변수를 선언하고 싶다면 변수명 = 나이(age)가 되고 나이는 숫자 이기 때문에 정수형 int를 나이(age)앞에 선언을 해주는 것입니다. 

int age; // 나이 

그리고 제 나이는 29살이기 때문에 "나이" 변수 속에 29대입해줍니다. 

age = 29; // 나이 29를 age에 대입한다

이제 printf 함수를 사용해서 출력하면 위의 사진과 같이 29가 출력되는 것을 확인할 수 있습니다. 

 

변수의 선언은 초기에 아무것도 없는 값의 변수를 생성해 초기화 하는 방법과 처음부터 초기값을 지정해 변수를 선언하는 "선언과 동시에 초기화"방법도 있습니다. 

int age=29; // 선언과 동시에 초기화 

 

변수의 선언에는 몇가지 규칙을 가지고 있습니다. 

1. 변수를 함수 내에 선언 할 경우, 제일 먼저 등장해야 한다. 
2. 변수의 이름은 알파벳, 숫자, 언더바(_)로 구성된다.
3. C언어는 대문자와 소문자를 구분한다.
4. 변수의 이름은 숫자로 시작할 수 없고, 키워드를 사용할 수 없다 
5. 공백이 포함될 수 없다.

 

위에처럼 int 1age;라고 선언한다면 변수명 앞에 숫자가 있어 "구문 오류"가 발생합니다. 

 

또한 C언어는 대문자와 소문자를 구분하기 때문에 A 와 a는 다릅니다.  따라서 변수 A와 a를 선언하고 각각 A에는 10을 a에는 100을 대입했을때 A와 a의 출력 결과는 위에 사진과 같이 나오게 됩니다. 

#include <stdio.h>

// 변수의 선언

int main(void)
{
	int A = 10;   //대문자 A변수는 10;
	int a = 100; // 소문자 a변수는 100; 

	printf("대문자 A의 값 = %d\n ", A);
	printf("소문자 a의 값 = %d\n ", a);

	return 0;
}

 대문자와 소문자 구분 소스코드

 

 

위 사진에서는 변수명을 대문자로 시작하는 Tistory라는 이름의 변수를 생성하고 아래서 호출할때에는 소문자로 시작하는 tistory로 호출을 하게 되면 발생하는 오류 입니다.

오류는 'tistory': 선언되지 않은 식별자 입니다. 라는 오류가 발생하게 됩니다. 이처럼 변수명이 길어지게 될때 변수명을 잘 확인하고 선언한 변수에 맞게 호출을 해주어야 합니다. 

 

 

 

댓글(16)

Designed by JB FACTORY