C 언어
Posted 04 2, 2010 18:38, Filed under: Language/Etc◈ C 언어의 자료형
▶ 정수형의 범위
정수형은 int형, short형 long형, unsigned형의 4가지이며, 정수형의 범위에 있어서 int의 경우 컴퓨터에 따라 범위가 다르므로 사용할 때 주의해야 한다.
|
정수형 |
범위 |
크기 |
|
short int |
-32768 ~ 32767 |
2 byte |
|
long int |
-2147483648 ~ 2147483647 |
4 byte |
|
int |
-32768 ~ 32767 |
2 byte |
|
unsigned short int |
0 ~ 65535 |
2 byte |
|
unsigned long int |
0 ~ 42959667295 |
4 byte |
|
unsigned int |
0 ~ 65535 |
2 byte |
▶ 실수형의 범위
실수형은 float형, double형의 2가지이며, 소수점 형태와 지수 형태로 표현된다.
|
실수형 |
범위 |
크기 |
|
float |
소수점이하6자리까지 기억 (지수는 -32 ~ + 32) |
4 byte |
|
double |
소수점이하 12자리가지 기억 (지수는 -32 ~ +32) |
8 byte |
▶ 문자형의 범위
|
- char형은 한 글자를 기억한다. - char형의 크기는 1 byte이다 - 문자는 내부적으로 0 ~ 255 사이으 정수인 ASCII 코드 값을로 처리된다. - 문자의 치환시 단일 인용부호(' ' )로 묶어야한다. |
◈ 선행 처리기
선행처리기(preprocessor)란 컴파일에 앞서 미리 처리되는 처리기를 말한다.
즉, C언어로 작성된 원시 프로그램을 컴파일하여 하나의 실행파일 형태를 만들어내는 데는
1 선행처리 2 컴파일 3 링킹의 3단계를 거치게 된다.
이때 원시 프로그램을 컴파일러에 전달하기 전에 사용자가 정의한 각종 내용을 먼저 처리하게 되는데(선행처리), 이를 선행처리기가 담당하게 되는 것이다.
예를 들어 C언어에 보면 *.h(헤더파일)라는 파일이 있고, 이 *.h(stdio.h)내의 파일에는 각종 매크로와 외부 파일에 대한 정의가 들어있다.
따라서 프로그램상에 이러한 헤더 파일을 사용하게 되면 컴파일하기 전에 해당 헤더 파일을 불러와서 연결시켜 주게 되는 것이다.
▶일반적인 선행처리기의 종류와 기능
|
선행처리기 |
기능 |
|
#include |
파일 포함 |
|
#define |
매크로 정의 |
|
#if ~ #endif |
조건부 컴파일 |
# 선행 처리기 사용시 주의사항
|
- 반드시 #으로 시작해야 한다. - 명령문 끝에는 세미콜론( ; )을 붙이지 않는다. - 한 줄에 하나의 명령만 쓴다. - 일반적으로 첫 칸부터 기입한다. |
◈ C 언어의 표준 입출력 함수
|
- 출력함수 printf() 화면에 여러 종류의 자료를 출력 putchar() 화면에 1개의 문자를 출력 puts() 화면에 문자열을 출력 - 입력함수 scanf() 키보드를 통해 1개의 이상의 자료를
입력 받는다. getchar() 키보드를 통해 1개의 문자를 입력
받는다. gets() 키보드를 통해 문자열을 입력 받는다. |
▶
출력 양식 변환기호
|
% 문자 |
변환 기능 |
인자의 자료형 |
|
%d |
지정한
자료를 10진 정수로 변환하여 출력 |
정수형, 문자형 |
|
%f |
지정한
자료를 부동 소수점 형식으로 변환하여 출력 |
실수형 |
|
%e |
지정한
자료를 지수형태로 변환하여 출력 |
실수형 |
|
%c |
지정한
자료를 한 문자로 변환하여 출력 |
정수형, 문자형 |
|
%s |
지정한
자료를 문자열로 변환하여 출력 |
문자열
포인터 |
|
%o |
지정한
자료를 8진수로 변환하여 출력 |
정수형, 문자형 |
|
%x |
지정한
자료를 16진수로 변환하여 출력 |
정수형, 문자형 |
▶ 입력 양식 변환기호
|
% 문자 |
변환 기능 |
|
%d |
키보드를 통해 정수형을 입력받음 |
|
%ld |
키보드를 통해 long 정수형을 입력 받음 |
|
%f |
키보드를 통해 실수형을 입력 받음 |
|
%lf |
키보드를 통해 double 실수형을 입력 받음 |
|
%c |
키보드를 통해 문자형을 입력 받음 |
|
%s |
키보드를 통해 문자열을 입력 받음 |
▶ 자료의 입 출력
(1) printf() 함수
|
- 형식 ; printf("출력양식", 변수 1, 변수 2, ...); - 기능 : 주어진 양식으로 자료를 출력한다. - 사용 예 : printf("This is an example\n"); printf("A=%d, B=%c\n", a, b); |
(2) scanf() 함수
|
- 형식 : scanf("입력양식", &변수 1, &변수 2, ....); - 기능 : 주어진 양식으로 자료를 입력받아 지정된 기억공간(변수)에 저장. - 사용 예 : scanf("%d", &a); |
▶ 문자 단위의 입 출력
(1) getchar() 함수
|
- 형식 : getchar(); - 기능 : 한 문자를 키보드를 통해 입력받는다. - 사용 예 : a = getchar(); |
(2) putchar() 함수
|
- 형식 : putchar(문자); - 기능 : 한 문자를 화면에 출력한다. - 사용 예 : putchar('A'); |
▶ 문자열 단위의 입 출력
(1) gets() 함수
|
- 형식 : gets(변수); - 기능 : 문자열을 키보드로부터 입력 받는다. - 사용 예 : char s[50] gets(s); |
(2) puts() 함수
|
- 형식 : puts(변수); - 기능 : 문자열을 화면에 출력한다. - 사용 예 : char s[] = "seoul" puts(s); |
◈ 연산자 우선 순위
|
연산자명 |
연산자 |
결함 방향 |
우선순위 |
||
|
괄호, 구조체, 공용체 연산자 |
()
[] -> . |
좌 → 우 |
높음
낮음 |
||
|
단항 연산자 |
!
~ ++ -- & * sizeof() |
우 → 좌 |
|||
|
이항 연산자 |
승 ∙ 제 |
*
/ % |
좌 → 우 |
||
|
가 ∙ 감 |
+
- |
좌 → 우 |
|||
|
비트 이동 |
<<
>> |
좌 → 우 |
|||
|
대소 비교 |
<
<= > >= |
좌 → 우 |
|||
|
등가 판정 |
==
!= |
좌 → 우 |
|||
|
비트 AND |
& |
좌 → 우 |
|||
|
비트 XOR |
^ |
좌 → 우 |
|||
|
비트 OP |
\ |
좌 → 우 |
|||
|
논리 AND |
&& |
좌 → 우 |
|||
|
논리 OR |
|| |
좌 → 우 |
|||
|
조건 연산자 |
? : ∙ |
우 → 좌 |
|||
|
대입 연산자 |
=
+= *= ∙∙∙ &= |
우 → 좌 |
|||
◈ Escape 문자
|
escape 문자 |
기능 |
|
\n |
출력시 줄바꿈(new line) |
|
\t |
수평으로 탭 이동 |
|
\f |
프린터의 form feed |
|
\a |
'삑' 소리를 낸다. |
|
\r |
커서를 행의 시작 위치로 이동(carrige return) |
|
\0 |
ASCII 코드 값 0인 문자(null 문자) |
"Language / Etc" 분류의 다른 글
| SNS - 페이스북, 트위터, 미투데이등.. SNS 붙이기 (2) | 2011/07/06 |
| bat 파일로 FTP 파일 업, 다운로드 (0) | 2009/10/16 |
| 프로그램 언어의 역사 이미지 (0) | 2009/06/19 |
| Http 통신규약 문서 (0) | 2009/06/16 |
| 필드 갯수만큼 출력, 개행 (0) | 2009/04/01 |
| 선택 정렬(Selection Sort) (0) | 2009/03/20 |
| Algorism - 최대값을 기준으로 여러개의 입력받은 값을 나눔. (0) | 2009/03/02 |
Trackback URL : http://develop.sunshiny.co.kr/trackback/424