C언어의 출력
※ C언어의 표준 출력 형식
1 2 3 4 5 6 7 8 9 10 11 | #include <stdio.h> //표준 입출력 지원 #include <string.h> //문자열 처리 지원 // 표준 출력 int main(void) { put(" \n 반갑습니다. 리눅스 C 언어 ! \n"); return 0; } | cs |
위와 같은 출력은 소스 파일이다.
※ c:) c-src > ace.exe
소스 파일 |
> |
목적 파일 |
> |
실행 파일 |
acc.c |
컴파일 (해석) |
acc.obj |
링크 |
acc.exe |
|
컴파일러 |
|
링커 |
|
컴파일러 Compiler
링커 Linker
ex)
메모장 'notepad.exe'이 실행파일이 되기 위해서는, 필요한 Links가 필요하다.
그 때 필요한 덩어리들이 'dll' 이라는 것이다.
[ dll ] →→→notepad.exe
[ dll ] ↗links
'dll' 은 Linux에서는 so와 같다. s~ object
Data ?
※ 처리
반복저인 일 처리 - 함수
- 연산자 = +, -, *,
- 제어문 = if, for ...
데이터 분류 - 자료구조
연산 - 알고리즘
알고리즘 + 자료구조 = 프로그램
절차 지향적 (순차적) = C언어, 함수
객체 지향적 (조립형) + C#, JAVA, MFC ex) 레고
※ Data type 자료형
40 - 정수 (integer)
5.6 - 실수 (floating-point number)
'A' - 문자 (싱글, character)
"star" - 문자열 (더블, string)
10/3 = 3.33333~
10/3 = 3
정수/정수 = 정수
정수/실수 = 실수
' Single Quote 홑따옴표
" Double Quote 겹따옴표
` Back Quote?
Data Size 데이터 크기 그릇의 크기
키보드 갯수 [128 ] + 국가별, 회사별 [ 128 ] = [ 256 ] ASCII 코드값
[ 256 ] = 문자 하나 표현하는 경우의 수 = byte
경우의 수
[ 10 ] = [ 0 ~ 9 ]
[ 8 ] = [ 0 ~ 7 ]
[ 15 ] = [ 0 ~ F ]
Byte
2**8 = 1 byte = 256
2**16 = 2 byte = 65536
2**32 = 4 byte = 42.94
2**64 = 8 byte
2**10 = 1 K = 1024 = 키로바이트
2**20 = 1 M = 104만 = 메가바이트
2**30 = 1 G = 107천만 = 기가바이트
2**40 = 1 T = 1099천만 = 테라바이트
계산기 (프로그래머)
16진수 HEX 헥사
10진수 DEC
8진수 OCT
2진수 BIN
참고 > http://myblog.opendocs.co.kr/archives/1230
자료형의 크기
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | // 자료형의 크기 > 메모리의 크기 환경에 따라 다르게 나타난다. #include <stdio.h> int main() { printf(" char = %d btye \n", sizeof(char)); printf(" short = %d btye \n", sizeof(short)); printf(" int = %d btye \n", sizeof(int)); printf(" long = %d btye \n", sizeof(long)); printf(" long long = %d btye \n", sizeof(long long)); printf(" float = %d btye \n", sizeof(float)); printf(" double = %d btye \n", sizeof(double)); printf(" long double = %d btye \n", sizeof(long double)); return 0; } | cs |
char = 1 byte (256)
short = 2 byte
int = 4 byte (42.93)
long = 4 byte
long long = 8 byte
float = 4 byte
double = 8 byte
long double = 16 byte
short <= int <= long
sizeof : 메모리 크기
ex) sizeof(char) = 1
2n bit 표현범위 > 1 ~ 2n_1
※ ASCII CODE
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | // ASCII CODE 보기 1 #include <stdio.h> int main() { int i; puts(" **ASCII CODE 보기 ** "); for (i = 0; i<128; i++) { printf("[%c = %d] \n", i, i); } return 0; } | cs |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | // ASCII CODE 보기 2 #include <stdio.h> int main() { int i; puts(" ** ASCII CODE 보기 ** "); for(i=0; i<27; i++) { printf(" [ %d ==> %c ]\n", i, i); } for(i=27; i<128; i++) { printf(" [ %d ==> %c ]\n", i, i); } return 0; } | cs |
\n 10 줄바꿈
\r
\t 11 tab
\a 7 bell
\b 8 backspace
(구글링해서 아스키 코드표 보면서 확인)