Basic Types ■ C에서는 근본적으로 다른 두가지 숫자 타입(정수 타입, 부동 소수점 타입)을 지원한다. Singed and Unsigned Intergers ■ 부호있는 정수의 가장 왼쪽 비트 (부호 비트라고 함)는 숫자가 0이거나 양수이면 0이고 음수이면 1이다. 따라서 가장 큰 16비트 부호있는(signed) 정수는 0111 1111 1111 1111(2^15-1)이고 부호없는(unsigned) 정수는 1111 1111 1111 1111(2^16-1)이다. 둘의 차이점은 가장 왼쪽 비트(부호비트) 이다. ■ C에서 일반적으로 int는 32비트 이지만 오래된 CPU에서는 16비트 일 수도 있다. Integer Types on a 16-bit Machine Type Smallest Value L..
Loops The while Statement i = 10; while( i > 0) { printf("T minus %d and counting\n", i); i--; } ■ 제어 표현식은 while 루프가 종료 될 때 거짓이다. 따라서 i>0으로 제어되는 루프가 종료되면 i는 0보다 작거나 같아야한다. ■ 제어 표현식은 루프 본문이 실행되기 전에 테스트되기 때문에 본문이 한 번도 실행되지 않을 수 도 있다. i가 음수 또는 0값을 가지면 루프는 아무 작업도 수행하지 않는다. ■ while 문은 종종 다양한 방식으로 작성 될 수 있다. 예를 들어, printf 호출 내에서 i를 줄임으로써 카운트 다운 루프를 더 간결하게 만들 수 있다. ex) printf("T minus %d and counting\n..
Selection Statements C의 문장(statement)의 대부분은 문장이 실행되는 순서에 어떤 영향을 미치는지에 따라 세 가지 범주로 분류된다. ■ Selection statements : if 및 switch 문을 사용하면 프로그램이 특정 실행 경로를 선택할 수 있다. ■ Iteration statements : while, do 및 for문은 반복을 지원한다. ■ Jump statements : break, continue 및 goto문은 프로그램이 다른 위치로 무조건 점프한다. (return문도 포함) Logical Expressions ■ 많은 프로그래밍 언어에서 i0 이 참이라면, 정수형 변수 i가 실수형으로 전환된다.
Arithmetic Operators 이항 연산자(binary operator): 덧셈 및 곱셈 연산자는 두 개의 피연산자가 필요하기 때문에 이항연산자라고 한다. 단항 연산자(unary operator): 단항 연산자는 한개의 피연산자가 필요하다. ■ 음수 피연산자와 함께 / 및 % 연산자를 사용할 때 결과를 설명하는 것은 까다롭다. C89표준에 따르면 피연산자가 음수이면 -9/7의 결과는 -1 또는 5가 될수 있다. 반면에 C99에서는 나눗셈의 결과가 항상 0으로 잘리고 (따라서 -9/7의 값은 -1) i % j의 값은 i와 동일한 부호를 갖는다 (-9 % 7는 -2) 연산자 우선순위 및 결합성 ■ 두 개 이상의 연산자가 동일한 표현식에 나타날 때, 우선순위가 높은 연산자부터 낮은 우선순위 연산자까지 ..
Using printf to Format Numbers ----------------------------------------------------------------------------------------------------------------------------------- #include int main(void) { int i; float x; i = 40; x = 839.21f; printf("|%d|%5d|%-5d|%5.3d|\n", i, i, i, i); printf("|%10.3f|%10.3e|%-10g|\n", x, x, x); return 0; } -----------------------------------------------------------------------..
Compiling and Linking 1. Preprocessing : 프로그램은 먼저 #로 시작하는 명령을 따라는 전처리에게 주어진다. 전처리 기는 편집기와 비슷하다. 프로그램을 항목을 추가하고 수정할 수 있다. 2. Compiling : 변환 된 프로그램은 컴파일 된 프로그램으로 이동하여 목적파일로 변환된다. 이 프로그램은 아직 실행할 준비가 되어있지 않다. 3. Linking : 마지막 단계에서 링커는 컴파일러가 생성한 오브젝트 코드를 실행 프로그램을 생성하는 데 필요한 추가 코드와 결합한다. 추가 코드에는 프로그램에서 사용하는 라이브러리 함수 (예: printf)가 포함된다. The General Form of a Simple Program 1. Directives : C 프로그램은 컴파일되기 ..
C언어 기반의 언어들 1. C++ : C의 모든 특징을 담고있고, 클래스와 객체지향 프로그래밍의 특징을 지원한다. 2. Java : C++을 기반하였으며, 따라서 C언어의 많은 특징을 포함하고있다. 3. C# : C#은 C++ 와 Java로 부터 파생된 최근 언어이다. 4. Perl : Perl은 단순한 스크립트언어였다. 시간이 지남에 따라 C의 많은 기능을 확장하고 채택하였다. C언어의 장점 1. 효율성: 효율성은 처음부터 C언의 장점 중 하나였다. C는 정통적으로 어셈블리 언어가 사용되는 응용 프로그램을 위한 것 이기 때문에 C 프로그램이 제한된 양의 메모리에서 빠르게 실행될 수 있어야했다. 2. 이식성: 프로그램 이식성이 C의 주요목표는 아니었지만 언어의 강점 중 하나로 밝혀졌다. 프로그램이 PC에..
문제: https://www.acmicpc.net/problem/17610 17610번: 양팔저울 무게가 서로 다른 k개의 추와 빈 그릇이 있다. 모든 추의 무게는 정수이고, 그릇의 무게는 0으로 간주한다. 양팔저울을 한 번만 이용하여 원하는 무게의 물을 그릇에 담고자 한다. 주어진 모든 추 www.acmicpc.net 문제해석: 위 그림과 같이 왼쪽 저울에 물을 담기위한 빈그릇을 고정한다고 가정해보자. 자 우리는 한개의 추를 가지고 3가지 행동을 할수있다. 1. 추를 오른쪽에 올린다 :: 이 경우 빈그릇에 무게는 추의 무게만큼 증가한다. 2. 추를 왼쪽에 올린다 :: 이 경우 빈그릇에 무게는 추의 무게만큼 감소한다. 3. 추를 어느저울에도 올리지 않는다 :: 이 경우 빈그릇에 무게의 변화가 없다. 추의..
- Total
- Today
- Yesterday
- 언리얼 자동화
- 테트리스
- 백준 27469
- 정보올림피아드
- unreal enigne
- 브레젠험 알고리즘
- ndisplay
- c++ 게임개발
- C++게임개발
- 언리얼 프로젝트 재생성
- ICPC 후기
- 백준 2365
- 홍정모의 게임 만들기 연습 문제 패키지
- 초등부
- 백준
- 코드포스
- opengl
- 언리얼 프로젝트 재생성 자동화
- C++게임
- OpenVDB
- 숫자판 만들기
- pygame
- tetris
- DP
- Python
- BOJ 27469
- 퀸 움직이기
- BOJ 2365
- Codeforces
- UE5.3
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |