| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 | 31 |
- C++ 언어 # 핵심정리
- C언어 #부록
- C언어 #핵심정리
- shell_script
- Bandit
- C언어 # 부록
- C언어 # 핵심 정리
- MySQL #핵심정리
- Hacking #Baic
- C++ 언어 # 핵심 정리
- PHP #핵심정리
- C++ 언어 #핵심정리
- HTML #핵심정리
- Today
- Total
목록전체 글 보기 (60)
cCcode
1. 포인터 사용하기 지금까지 값을 저장할 때 변수를 사용했습니다. 그럼 근본적인 의문이 생길텐데요. Q. "과연 변수는 어디서 생성되는 것일까요?" A. "변수는 컴퓨터의 메모리에서 생성됩니다. 즉, 메모리에 일정한 공간을 확보하고 원하는 값을 저장하거나 가져오는 방식이죠." 보통 변수는 num과 같이 변수명을 사용해 표현하지만 방금 말했듯이 변수는 메모리의 특정 공간에 위치해 있기 때문에 메모리 주소로도 표현이 가능합니다. 그래서 변수의 메모리 주소를 구하려면 변수 앞에 &(주소 연산자)를 사용하면 됩니다. 아,, 그리고 메모리 주소는 16진수 형태이기 때문에 %x, %X 서식지정자를 사용합니다. + 물론 서식지정자 %p(pointer의 약어로 p를 사용)를 사용해도 됩니다. 이때 메모리 주소는 고정..
1. switch 분기문 switch 분기문은 전에 설명한 if 분기문처럼 조건을 처리할 수 있습니다. if는 참과 거짓일 때 두가지만 처리할 수 있었죠. 물론 else if 를 사용해 여러 조건을 지정해줄 수 있었지만, 매번 조건식을 지정해줘야 해서 번거로운 면이 없지 않아 있었습니다. 그에 비해 switch 분기문은 조건이 많아도 if 보다 더 간단히 처리할 수 있습니다. switch 분기문은 항상 case와 함꼐 사용하는 데 변수의 값이 case에 지정한 값과 일치한다면 해당 코드를 실행하게 됩니다. 만약 어떤 case에도 해당되지 않는다면 default의 코드를 실행합니다. (default 는 생략할 수 있습니다.) 이처럼 switch 분기문은 형식이 일정하며 처리해야 할 조건이 많은 경우 사용합..
1. 최상위 비트와 최하위 비트 비트에서 첫 번째 비트를 최상위 비트(Most Significant Bit, MSB), 마지막 비트를 최하위 비트(Least Significant Bit, LSB)라고 부릅니다. 부호 있는 자료형의 최상위 비트는 부호비트라고도 불립니다. 이 비트가 1이면 음수, 0이면 양수입니다. flag는 깃발에서 유래한 용어입니다. 깃발을 올리면 on, 내리면 off 를 정수 비트에 활용하면 비트가 1일 경우에는 on, 0일 경우에는 off를 나타냅니다. 즉, 하나의 비트는 말 그대로 1 bit의 크기를 가지고 있습니다. 그래서 int(4byte)는 32개의 상태를 저장할 수 있습니다. flag는 적은 공간에 정보를 저장하고 빠른 속도를 필요로 할 때 사용합니다. ex) CPU • 특..
1. Boolean 자료형 사용하기 Boolean 자료형은 논리 자료형이라고 불리며 참과 거짓을 나타냅니다. 다만, C언어에선 Boolean 자료형이 없어 거짓을 0으로 참을 0이 아닌 정수로 표현합니다. 그래서 우리는 파일을 이용해 true를 참으로, false를 거짓으로 나타낼 수 있습니다. 결과를 통해 Boolean 자료형은 1byte로 그전까지 참, 거짓을 구분할 때 사용했던 int 자료형과는 크기가 다름을 알 수 있습니다. 그리고 printf 함수로 결과를 출력할 때는 %d 서식지정자를 사용합니다.(따로 정의된 전용 서식지정자는 없습니다.) 2. 비트 연산자 사용하기 지금까지는 자료형을 구분할 때 byte 단위로 구분해 사용했습니다. 비트 연산자는 byte 단위보다 더 작은 bit 단위로 연산하..
1. if 조건문 사용하기 우선 if 조건문에서 비교할 때 비교할 변수, 값은 자료형을 맞춰주어야 합니다. if 조건문 뒤에 오는 코드가 한 줄 이라면 중괄호를 생략할 수 있습니다. if 조건문은 분기(branch)를 위한 문법입니다. 즉, 분기는 [둘 이상으로 갈라지다]라는 뜻으로 프로그램의 흐름을 둘 이상으로 나누는 것을 말합니다. 마치 여러 갈래로 나뉘어진 오솔 길 같지 않나요..? 이처럼 분기를 나누기 위해 if 말고도 else if 와 else 을 사용할 수 있는데 else if 와 else은 단독으로 사용할 수 없습니다. 위의 코드처럼 두 가지의 갈래로 분기할 때는 일반적으로 if (참) 과 else (거짓) = (if 조건을 만족하지 않은 나머지 값들)을 사용합니다. 사실 if - else ..
1. 자료형의 확장과 축소 정수와 실수 간의 연산 결과는 실수가 나옵니다. 왜냐하면 실수가 정수보다 표현 범위가 넓기 때문이죠. C언어에서는 다른 자료형을 함께 사용한다면 컴파일러에서 암시적 형 변환(implicit type conversion)을 하게 되는데, 자료형의 크기가 큰 (= 표현 범위가 넓은) 쪽으로 자동 변환됩니다. 이를 형 확장(type promotion)이라고 합니다. ex) 크기가 다른 int(4byte)자료형과 long long(8byte)자료형을 함께 연산한다면 두 자료형 모두 정수 자료형이지만, int 보다 long long이 표현범위가 넓기 때문에 long long으로 변환됩니다. 만약 실수 → 정수처럼 표현범위가 좁은 쪽으로 변환하게 되면 값의 손실이 생깁니다. 이처럼 자료형..
1. 입력 값을 받아오기 scanf 함수를 통해 사용자의 입력을 받을 수 있습니다. ◎ scanf(서식, 변수의 주소); - 해당 함수가 성공하면 가져온 값의 개수를 반환하고 실패하면 EOF(-1)을 반환합니다. scanf 함수는 나온 지 오래되었기 때문에 입력 값의 길이를 설정할 수 있는 기능이 없습니다. 따라서 일부 컴파일러에서는 scanf 함수를 사용하지 말라는 경고와 함께 컴파일 에러가 발생하는 데 현재 제가 사용하는 visual studio 라는 컴파일러 또한 안전상의 문제로 scanf 함수의 사용을 권하지 않습니다. 그래서 이럴 경우에는 어떻게 하냐..? 두 가지의 방법이 있습니다. 1) scanf_s 라는 컴파일러에서 제공하는 함수를 사용하는 방법 이 경우 정수를 입력할 때는 scanf 와 ..
HTML이란 무엇일까요..? HTML은 Hyper Text Markup Language의 약자입니다. 1) HTML 태그(tag) HTML 태그는 태그 이름을 (꺽새 괄호)로 감싸서 표현합니다. 2) HTML 버전 이외에도 HTML4.01, XHTML1.0, HTML5이 있으며, 현재 최신버전이 HTML5라는 것만 알고 계시면됩니다. 3) W3C W3C는 World Wide Web Consortium의 약자로, WWW을 위한 표준을 제정하고 관리하는 기관입니다. 4) HTML의 기본 구조 ※ 기본 구조 해석 : 현재 문서가 HTML5 문서임을 명시합니다 : HTML 문서의 루트(root)요소를 정의합니다. : HTML 문서의 메타 데이터(meta data)를 정의합니다. - 메타 데이터(meta d..