-
메모리 영역 (code, data, bss, heap, stack)Develpment/C 2020. 9. 13. 21:24
1. 메모리 영역 주소 영역 내용 메모리 할당 시기 0x0000(Low Address) code(text) * 코드, 함수, 제어문 등 실행할 프로그램의 코드가 저장되는 영역 * Compile Time Memory 할당 * 크기 고정 data data * 초기값이 있는 전역변수, static 변수, 정적 배열, 정적 구조체 등 저장 bss(Block Started by Symbel) * 전역으로 선언된 초기화 되지 않은 데이터 영역 heap * 동적 할당 객체에 대한 영역 * High Address 방향으로 추가 할당 * Run Time Memory 할당 * 가변적 크기 자유영역 * Heap Overflow : heap 영역이 증가하여 stack 영역을 침범 * Stack Overflow : stack ..
-
printf 와 scanf 함수에 대한 고찰Develpment/C 2020. 9. 13. 21:24
1. 다양한 종류의 특수 문자 특수 문자 의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace) \f 폼 피드 (form feed) \n 개행 \r 캐리지 리턴 (carriage return) \t 수평 탭 \v 수직 탭 \\ 백슬래시(\) \' 작은 따옴표 \" 큰 따옴표 2. 서식 문자의 종류와 그 의미 서식 문자 출력 형태 %c 단일 문자 %d 부호 있는 10진 정수 %i 부호 있는 10진 정수, %d와 같음 %f 부호 있는 10진 실수 %s 문자열 %o 부호 없는 8진 정수 %u 부호 없는 10진 정수 %x 부호 없는 16진 정수, 소문자 사용 %X 부호 없는 16진 정수, 대문자 사용 %e e 표기법에 의한 실수 %E E 표기법에 의한 실수 %g 값에 따라서 %f, %e 둘 중 하나..
-
상수와 기본 자료형Develpment/C 2020. 9. 13. 21:24
1. 기본 자료형의 종류와 데이터 표현 범위 자료형 (data type) 할당되는 메모리 크기 표현 가능한 데이터의 범위 정수형 char 1 byte -128 ~ +127 short 2 byte -32768 ~ + 32767 int 4 byte -2147483648 ~ +2147483647 long 4 byte -2147483648 ~ +2147483647 실수형 float 4 byte 3.4x10^-37 ~ 3.4x10^38 double 8 byte 1.7x10^-307 ~ 1.7x10^308 long double 8 byte 혹은 그 이상 차이를 많이 보임 2. 실수형 자료형의 정밀도 자료형 정밀도 float 소수 이하 6자리 double 소수 이하 15자리 long double double의 정밀도..
-
데이터 표현 방식의 이해Develpment/C 2020. 9. 13. 21:24
1. 8진수, 16진수 표현 int a = 10; // 10진수 int b = 0xa; // 16진수. 0x로 시작 int c = 012 // 8진수. 0으로 시작 2. 정수의 표현 방식 MSB 0 0 0 0 0 0 0 1 부호(+,-) 표현 ex) 1바이트의 메모리 공간에서의 +1 표현 3. 음수의 표현 0 0 0 0 0 1 0 1 [+5] * 1의 보수를 취한다. 1 1 1 1 1 0 1 0 * 1을 더한다. 1 1 1 1 1 0 1 1 [-5] 4. 음수의 표현 증명 0 0 0 0 0 1 0 1 [+5] + 1 1 1 1 1 0 1 1 [-5] 1 0 0 0 0 0 0 0 0 [0] * 올림 수(carry)는 버린다. 5. 실수의 표현 MSB 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0..
-
변수Develpment/C 2020. 9. 13. 21:23
1. 변수 선언시 주의 사항 변수의 이름은 알파벳, 숫자, 언더바(_)로 구성된다.C 언어는 대 소 문자를 구분한다. 따라서 변수 val과 변수 Val은 서로 다른 변수가 된다.변수의 이름은 숫자로 시작할 수 없고, 키워드를 사용하는 것도 불가능 하다.공백이 포함될 수 없다. 2. 연산자 연산자 연산자의 의미 결합성 = 오른 쪽에 있는 값을 왼쪽에 대입한다.ex) a = 20 - 왼쪽에 있는 값에서 오른쪽에 있는 값을 뺀다.ex) a = 4 - 3 -> * 왼쪽과 오른쪽에 있는 값을 곱한다.ex) a = 4 * 3 -> / 왼쪽에 있는값을 오른쪽에 있는 값으로 나눈다.ex) a = 4 / 3 -> % 왼쪽에 있는 값을 오른쪽에 있는 값으로 나눠서 나머지를 반환한다.ex) a = 4 % 3 -> 3. 증가..
-
5. metaDevelpment/HTML 2020. 9. 13. 21:22
Sample 123456789101112131415161718192021222324252627 meta Tag meta를 통한 다양한 문서정보 저장 meta는 화면에 보여지는 정보는 아니지만, 웹페이지의 다양한 문서정보를 지정하기 위해 사용. charset : 기본문자 코드 Generator : 회사 정보 Author : 개발자 정보 Keywords : 키워드 Description : 웹페이지 요약정보 Copyright : 저작권 정보 Subject : 문서제목 Colored by Color Scriptercs