[C] 변수와 자료형

장세민·2022년 6월 18일
0

📝 TIL

목록 보기
2/40
post-thumbnail

데이터를 변수에 넣기

변수명 = 데이터;

ex)

int age;  #변수 선언
 
age=15;  # 대입문(변수에 데이터를 저장)

프로그램 구성요소

printf 함수 안의 %d는 10진수를 출력할 때 사용하는 서식 지정자
즉, 서식 지정자 하나에 변수(값) 하나가 대응

대입문 형식


변수에 상수(데이터)를 저장하는 데 사용하는 명령문

추가 공부 내용

#include <stdio.h>
 
int main()
{
  int num1, num2, num3;   #변수를 콤마로 구분하여 변수 여러 개 선언
 
  num1 = 10;
  num2 = 20;
  num3 = 30;
 
  printf("%d %d %d\n", num1, num2, num3);   #10 20 30: 변수에 저장된 값을 %d로 출력
 
  return 0;
}
 

C 언어에서 변수 여러 개 선언하려면 int 한 번만 사용한 뒤 변수를 콤마로 구분하여 선언

자료형이 같을 때만 한 번에 여러 개 선언 가능,
자료형이 다르다면 따로 선언

언어 자료 종류

C언어에서는 0.2와 .2가 같다.
4는 C언어에서 정수이지만, 4.은 실수이다.
A는 변수가 되지만, 'A'는 문자가 된다.
"한"은 한글 1자는 최소 2바이트가 필요하므로 문자 상수 x

기본 자료형 이름과 자료의 크기

변수 선언

변수의 기억공간 할당
ex)
char grade; -> 1B 할당
int age, count; -> 4B 할당
double average; -> 8B 할당

왜 이렇게 많은 자료형이?

가장 적절한 자료형을 사용할 수 있도록 많은 자료형을 제공한다.
예를 들어, 나이 1000개를 int 형 변수에 저장장하면 10004B=4000B가 필요하지만, double형 변수에 저장하면 10008B=8000B가 필요하다.

즉, 가장 적절한 자료형을 사용해야 차지하는 기억공간을 줄일 수 있다.

또한, 우리는 실수를 10진수로 사용하지만, 컴퓨터는 2진수를 사용한다. 예로 0.1을 10개 더하면 1이 아닌 0.9999..가 된다.
= 정수만으로 구성된 데이터는 정수형으로 처리

식별자

프로그램에서 이름으로 사용하는 것의 총칭
ex) 변수명, 배열명, 함수명, 구조체명

예약어

C 언어에서 특별한 의미로 사용하는 단어, 식별자로 사용 X
ex)
char, float, double, if, else ... 등

printf 함수 이름은 예약어?

C 언어에서 제공하는 라이브러리 함수명은 예약어가 아니다.
-> 식별자로 사용할 수는 있지만 함수 원래 기능 사라짐

Q: 여름 방학과 겨울 방학을 합친 방학일 구하기: 프로그램
여름 방학 28일, 겨울 방학 38일, 총 방학일?

#include <stdio.h>
 
int main()
{
 int summer, winter, sum;
 
 summer=28;
 winter=38;
 
 sum=summer+winter;
 
 printf("합계 : %d일", sum);
 
 return 0;
}
 

C언어 자료 종류

자료형 이름과 자료의 크기

signed #부호가 있는 경우
unsigned #부호가 없는 경우
음수가 필요 없는 자료인 경우, unsigned int를 사용해도 된다.

float은 4B, double()은 8B이다.
문자의 경우, 1B
많은 자료형 중 특별한 이유를 붙이지 않은 경우,
정수는 기본 자료형이 되고, 실수는 double, 문자는 char형

비트, 바이트, 자료 표현 범위

1비트(bit)
0 또는 1 두 가지 정보를 저장할 수 있는 최소의 자료 저장 단위

profile
분석하는 남자 💻

0개의 댓글