C

[내배캠자습]C언어 챕터 1-9 : 변수

BreadMushroom 2026. 3. 27. 23:21

변수(Variable) <-> 상수(Constant) [중요 샘플 코드]

변할 수 있는 수. 아래와 같은 형식으로 선언하게 됩니다.

자료형 변수명 = 값;

 

Ex010901) 자료형 변수명 = 값; [중요 샘플 코드]

// Main.c

#include <stdio.h>

int main(void)
{
	// 자료형 변수명 = 값;
	int Num = 2147483647; // 선언과 동시에 초기화
	double PI;            // 선언

	printf("Num = %d\\n", Num);

	PI = 3.141592;
	printf("PI = %lf\\n", PI);

	return 0;
}
// Main.c

#include <stdio.h>

int main(void)
{
	// 자료형 변수명 = 값;
	int PassWord = 1234567; // 선언과 동시에 초기화
	double Card;            // 선언

	printf("PassWord = %d\\n", PassWord);

    Card = 3.141592;
	printf("Card = %lf\\n", Card);

	return 0;
}

unsigned 키워드와 signed 키워드

부호 없는 Vs. 부호 있는. unsigned를 자료형 앞에 붙히면 음수는 표현 불가능. 대신 양수 부분이 2배 늘어납니다. 서식 지정자로는 %u를 쓰면 됩니다. 모든 자료형은 사실 앞에 signed 키워드가 생략되어 있습니다.

 

???Ex010902) 오버플로우

// Main.c

#include <stdio.h>

int main(void)
{
	char CharNum = -128;
	signed char SignedCharNum = -128;
	unsigned char UnsignedCharNum = 255;
	unsigned char UnsignedCharNumWithOverflow = -1;

	short ShortNum = -32768;
	signed short SignedShortNum = -32768;
	unsigned short UnsignedShortNum = 65535;
	unsigned short UnsignedShortNumWithOverflow = -1;

	printf("CharNum: %hhd\\n", CharNum);
	printf("SignedCharNum: %hhd\\n", SignedCharNum);
	printf("UnsignedCharNum: %hhu\\n", UnsignedCharNum);
	printf("UnsignedCharNumWithOverflow: %hhu\\n", UnsignedCharNumWithOverflow);

	printf("ShortNum: %hd\\n", ShortNum);
	printf("SignedShortNum: %hd\\n", SignedShortNum);
	printf("UnsignedShortNum: %hu\\n", UnsignedShortNum);
	printf("UnsignedShortNumWithOverflow: %hu\\n", UnsignedShortNumWithOverflow);

	return 0;
}

오버플로우(Overflow)

자료형이 표현 가능한 수를 넘어서는 경우. 그릇에 물을 너무 많이 따르면 넘쳐 흐르는 것과 같습니다.

N은 각 자료형의 크기. char는 8, int는 32를 대입.

 

char 자료형의 오버플로우 도식화.