728x90

 

변수(variable)

: 프로그램 실행 중 값을 저장하는 메모리 공간, 실행 중 변경 가능

  • 숫자 변수
  • 문자 변수

상수(constant)

: 프로그램 실행 중 이용되는 값, 실행 중 변경 불가

  • 숫자 상수 (정수, 실수)
  • 문자 상수_print_문에서 문자열 형태로 "Hello World!" 라고 기입하는 것 조차도 상수이다.
  • 논리 상수

자료형(data type)

: 데이터의 타입(종류)

  • 메모리의 값을 얼마나 할당해야하는지 알기위해 사용한다.
  • ㄴ 메모리의 효율적 사용을 위해 보통 임베디드 시스템에서 쓰인다.

 

 

 

 

💡 sizeof() 자료형의 크기를 확인할 때 사용하는 함수로 <stdio.h> 헤더파일내에 내장되어 있다.

 

💡

  • signed, unsigned signed : 부호있는 값 ( 흔히 생략 )
  • unsigned : 부호없는 값 ( 즉, 양수만을 가지는 값 )
    └ signed 에 비해 양의 범위의 더 많은 값을 표현할 수 있음.

오버플로우(overflow)

: 변수의 표현 범위를 벗어나는 수를 변수에 할당하려할 때 발생한다.

#include <stdio.h>
#include <limits.h> // 자료형의 최댓값과 최솟값이 정의되어 있음

int main(void)
{
    int x;
    short y;
    printf("INT_MAX = %d\n", INT_MAX);
    printf("SHRT_MIN = %d\n", SHRT_MIN);
    x = INT_MAX + 100 , y = SHRT_MIN - 100;
    printf("INT_MAX + 100 = %d\n", x);
    printf("SHRT_MIN - 100 = %d\n", y);

    return 0;
}

 

💡 <limits.h>

limits.h_ 는 C 언어의 표준 라이브러리로, 정수형의 범위를 나타내는 상수들을 정의한다.

 

C 자료형 - 위키백과, 우리 모두의 백과사전

 

ko.wikipedia.org

 


정수 상수

  • 숫자는 기본적으로 int형이 된다.
  • 정수형의 자료형을 명확히 표현할 때 정수뒤에 기호를 붙인다.

 

 

  • 10진수, 8진수, 16진수 표현 방법 
#include <stdio.h>

int main(void)
{
	int x = 10;   // 10은 10진수이고 int형이고 값은 십진수로 10이다.
	int y = 010;  // 010은 8진수이고 int형이고 값은 십진수로 8이다.
	int z = 0x10; // 010은 16진수이고 int형이고 값은 십진수로 16이다.
	printf("x = %d", x);
	printf("y = %d", y);
	printf("z = %d", z);

	return 0;
}

기호 상수(Symbolic Constant)

: 기호를 이용하여 상수를 표현한 것

  • 가독성을 높일 수 있다.
  • 값을 쉽게 변경할 수 있다.
#define EXCHANGE_RATE 1120; //보통 헤더파일 내에 정의할 때 사용한다.
const int EXCHANGE_RATE = 1120; //const 키워드는 변수를 상수취급할 때 사용한다.

실수 표현

 

고정 소수점 방식

  • 정수 부분에 일정 비트를 할당하고 소수 부분에 일정 비트를 할당한다.

부동 소수점 방식

  • 표현 범위가 늘어난다.

부동 소수점 방식의 이점


문자형

  • 아스키코드를 이용하여 표현한다.
  • 문자형 또한 컴퓨터가 이해가능하게 숫자로 표현할 수 있다.

문자 변수

  • char 형을 사용하여 문자 저장
char c = 'A'; //char 자료형에 'A' 선언시 ASCII 값인 65가 저장된다.
  • char 형의 2가지 초기화 형태
#include <stdio.h>

int main(void)
{
	char code1 = 'A'; // 문자 상수로 초기화
	char code2 = 65; // 아스키 코드로 초기화

	printf("code1 = %c \n", code1);
	printf("code2 = %c \n", code2);

	return 0;
}

 


제어 문자

: 인쇄 목적이 아닌 제어 목적으로 사용되는 문자들

  • 확장열 (Escape Sequence) = Control Sequence
  • 이스케이프 시퀀스, 제어 시퀀스 또는 확장열이라고도 한다.

컴퓨터와 주변 기기의 상태를 바꾸는 데에 사용되는 일련의 문자열.

 

#include <stdio.h>
int main(void)
{
    int id, pass;

    printf("아이디와 패스워드를 4개의 숫자로 입력하세요:\n");

    printf("\a -> id: ____\b\b\b\b");
    scanf_s("%d", &id);

    printf("\a -> pass: ____\b\b\b\b");
    scanf_s("%d", &pass);
    printf("\a -> 아이디는 \"%d\"이고 패스워드는 \"%d\"입니다.\n", id, pass);

    return 0;
}

 

 


 

 

 

 

변수와 자료형

변수(variable)

www.notion.so

 

아래 노션 페이지에 C 공부 내용에 대해 업로드 합니다!

수정사항이나 질문사항의 경우 노션 댓글로 남겨주세요!(*•̀ᴗ•́*)و ̑̑

 

 

 

C 언어 이론 정리

조건문, 반복문 사용 시 중괄호로 명령문들 묶어주기 - 명령문 1개일 때 포함 (코드 수정 시 오류 방지)

www.notion.so

 


 

개발 환경

Visual Studio 2019
Visual Studio Code

작성 플랫폼

Notion

 

728x90

'🧑‍💻 Language > C·C++' 카테고리의 다른 글

[C 이론] 6. 조건문  (0) 2021.05.03
[C 이론] 5. 수식과 연산자  (0) 2021.05.03
[C 이론] 3. C프로그램 구성요소  (0) 2021.05.03
[C 이론] 2. C프로그램 작성  (0) 2021.05.03
[C 이론] 1. C프로그래밍 기초  (0) 2021.05.03