변수 : 어떤 값을 저장할 자리.
세상의 요소들을 모델링하여 값으로 바꾸어 저장.
자료형 : 변수의 형식을 지정하는 것.
논리, 정수, 실수, 열거, 사용자 정의 형 이 존재.
자료형 |
크기(Byte) | 범위 |
bool |
1 | true or false |
char |
1 | -128 ~ 127 |
short |
2 | -32,768 ~ 32,767 |
int |
4 | -2,147,483,648 ~ 2,147,483,647 |
__int64 | 8 |
-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
long | 4 | same as int |
long long | 8 | same as __int64 |
wchar_t | 2 | 0 ~ 65,535 |
float | 4 | 3.4E +/- 38 (소수점 이하 7자리) |
double | 8 | 1.7E +/- 308 (소수점 이하 15자리) |
long double | 8 | same as double |
enum | 4 | same as int |
unsigned char | 1 | 0 ~ 255 |
unsigned short | 2 | 0 ~ 65,535 |
unsigned int | 4 | 0 ~ 4,294,967,295 |
unsigned long | 4 | same as unsigned int |
unsigned long long | 8 | 0 ~ 18,446,744,073,709,551,615 |
변수의 초기화
: 변수는 사용전에 항상 값을 초기화 해주어야한다.
선언시에는 무의미한 값 = 쓰레기 값이 임의로 저장되어있기 때문.
습관적으로 0으로 초기화해도 좋다.
선언 후 초기화
자료형 변수명;
변수명 = 값;
int num;
num = 10;
선언과 동시에 초기화
자료형 변수명 = 값;
int num = 100;
프로그램의 기본
헤더파일 : 미리 작성된 코드의 선언부. 가져다가 사용할 어떤 기능의 설명서.
메인함수 : 프로그램의 몸체. 프로그램 기동의 순서도.
#include <stdio.h>
int main()
{
return 0;
}
c 의 기본 입출력
입력 : scanf() : "서식문자", 저장할 변수의 주소값. 의 쌍으로 입력을 받음.
출력 : printf() : "서식문자 or 문자열" , 출력할 변수. 로 출력함. 변수와 서식문자쌍은 생략가능.
printf("%d \n", num1);
scanf("%d", &num2);
기본 서식 지정자
출력을 위해 자료형에 맞는 서식을 정해 두었다.
자료형 별 서식지정자
자료형 | +/- | 부호 없음 | 확장 |
char | %c, %d | %c, %u | %x, %o |
short | %hd | %hu | %x, %o |
int | %d | %u | %x, %o |
long | %ld | %lu | %lx, %lo |
long long | %lld | %llu | |
float | %f | %F, %e, %E, %g, %G, %a, %A | |
double | %lf | ||
long double | %Lf | %le | |
pointer | %p | ||
string | %s |
지정자 형식
지정자 | 형식 |
d | 부호 있는 10진수 |
i | 부호있는 8, 10, 16진수(입력시) |
u | 부호 없는 10진수 |
o | 부호 없는 8진수 |
x,X | 16진수 |
l, h | long, short 접두사. |
f, F | 부동소수점. 실수 |
e, E | 지수 표기 실수 |
g, G | e, f 중 표기가 짧은 방법으로 사용. |
a, A | 실수의 16진수 표기.(소, 대문자) |
c | 문자. |
s | 문자열. |
su | 유니코드 문자열 |
s8 | UTF-8 문자열. |
%[플래그][폭][.정밀도]서식지정자
플래그 : 채울 문자나 숫자. 지정하지 않으면 공백. 8,16진수일때만 단독 사용 가능.
폭 : 출력할 길이를 나타냄. 지정하지 않으면 전체.
정밀도 : 소수점 이하 몇자리를 출력할지 나타냄. 지정하지않으면 전체출력. 더 길면 0으로 채움.
이스케이프 시퀀스
역슬래시(\) 와 문자, 숫자를 조합해 제어문자를 출력, 표현, 기능 사용을 위해 만들어진 기법.
시퀀스 | 설명 |
\a | 비프음(경고) |
\b | 백스페이스 |
\f | 폼 피드 |
\n | 개행문자, 새 줄 |
\r | 복귀 |
\t | 수평 탭 |
\v | 수직 탭 |
\\ | 역슬래시 |
\' | 작은 따옴표 |
\" | 큰 따옴표 |
\? | 물음표 |
\000 | 8진수로 숫자에 해당하는 아스키 코드 문자 표현. |
\xhh | 16진수로 숫자에 해당하는 아스키 코드 문자 표현. |
상수 : 리터럴을 담는 변수.
리터럴 : 변하지 않는 고유값. 소스코드 상에서 변수에 담지 않은 값 그 자체.
상수는 선언과 동시에 초기화 해야한다.
const int con1 = 1; // 상수. 선언과 동시에 초기화
const float con2 = 0.1f; // 상수. 선언과 동시에 초기화
const char con3 = 'a'; // 상수. 선언과 동시에 초기화
초기화 이후에 재할당 하려고하면 컴파일 에러가 발생.
다른 상수 값이 필요하면 새로 선언하고 초기화해야함.
'{Programing} > C.C++' 카테고리의 다른 글
c/c++ 조건문 (0) | 2020.01.02 |
---|---|
c/c++ 반복문 (0) | 2020.01.02 |
c/c++ 포인터 (0) | 2020.01.02 |
c/c++ 비트연산자 (0) | 2020.01.01 |
c/c++ 연산자 (0) | 2020.01.01 |
댓글