본문 바로가기
C언어

C언어 기초- 변수(속성, 주소, 값, 이름, Const, 예약어)

by 유노brain 2023. 3. 3.
반응형

1. 변수의 속성

● 프로그래밍언어에서 변수(variable)는 컴퓨터 구조의 기억장소를 표현
● 변수의 6가지 속성들
1) 이름(name)
2) 타입(type)
3) 주소(address)
4) 영역(scope)
5) 값(value)
6) 존속기산(lifetime)
● 바인딩(binding): 변수에 속성을 부여

 

2. 변수의 주소

● 프로그램에서 사용되는 변수는 변수 type 크기만큼 기억장소에 대응한다.
●  l-value: 변수에 대응된 기억장소의 주소
● 한 변수의 주소는 실행 시점에 따라 다를 수 있다.
ex) gao()  { int x;...}
● 동일한 이름의 벼수는 프로그램에서 사용된 위치에 따라 주소가 다를 수 있다.
-> int x;                   //전역변수
-> bao() { int x; ...}  // bao의 지역변수
-> hao() { int x;...}    //hao의 지역변수

3. 변수의 값

●  C언어에서 변수의 값을 초기화하지 않으면 변수값에 자동적으로 쓰레기 값이 들어 있다.
●  변수의 l-value: 변수의 주소(adress)
●  변수의 r-value: 변수의 값(value)
int k ;
k = 3;     //k : l-value
k = k + 5;    // k : r-value

4. 예약어와 식별자

예약어 : 컴파일러와 약속된 단어
식별자 : 사용자가 만든 단어
식별자를 만드는 규칙
- 알파벳 A~Z,a~z,숫자0~9,_(밑줄)만 사용
- 숫자로 시작X
- 대문자와 소문자는 서로 다른 식별자
구분 예약어
자료형 char double enum float int long short signed struct union unsigned void
제어문 break else continue default do else ofr goto if return switch while
기억클래스 auto extern register static
기타 const sizeof typedef volatile

5. Const

-> const를 사용하는 변수의 경우 초기값 수정이 불가하다. java final, 상수처럼 사용
	#include<stdio.h>

	int main(void) {
		int income = 0;	//수입 초기화
		double tax;		//세금
		const double tax_rate = 0.45;	//세율 초기화

		income = 50;
		tax = income * tax_rate;
		printf("세금은 : %.3f입니다.\n", tax);	//소수3번째자리까지
	
		return 0;
	}
반응형

댓글