U E D R , A S I H C RSS

새싹교실/2015/의사양반/0429 (rev. 1.16)

새싹교실/2015/의사양반/0429


1. 참여자 명단


의사 장용운 11학번 출석
환자 천준현 15학번 출석
최지혁 출석
박인서 출석

2. 수업

2.1. 진행

1. 장소 : 6층 학회실
2. 시간 : 11시 ~ 13시

2.2. 내용

7강. 전처리기와 I/O - I/O는 불필요하다 판단되어 생략함
  • 전처리기가 뭐죠?
  • 너를 define으로 임명해주마
  • 내안에 너 있다 include
  • 전처리기 매크로
  • ifdef, ifndef, endif
  • 프로젝트 빌드 과정
    ○ 전처리-컴파일-링크 과정
    ○ 헤더의 목적과 원리
    ○ 코드의 분리와 재사용
    ○ 링크

9강. 이게 말로만 듣던?
  • 포인터
  • 메모리 주소 표현방식
  • &연산자
  • 포인터 변수와 자료형
  • 더블 트리플 쿼드라 펜타! 손가락질에는 끝이없다
  • Call by value와 Call by reference

3. 코드

3.1. 예제1

#include <stdio.h>
#pragma warning(disable:4996)

#define DEBUG

#define PI 3.14

int main(void) {
	printf("PI = %f\n", (float)PI);
#ifdef DEBUG
	printf("이 문장은 디버그 중일 때에만 출력됩니다.");
#endif
	return 0;
}

3.2. 예제2

void swap(int*, int*);

void swap(int* pa, int* pb) {
	int c;
	c = *pa;
	*pa = *pb;
	*pb = c;
}

4. 숙제

1. 이 페이지에 후기 작성하기!
2. 오늘 공부한 개념 수업 페이지에 정리하기!
3. 다음 프로그래밍 용어들의 뜻 조사하기. Stack과 Queue의 연산은 동작을 이해해야함
  • Stack -> push, pop 연산
  • Queue -> push, pop 연산
  • Line feed
  • Carriage return
  • SIMD

5. 후기

  • 후기 작성 요령 : 후기는 F4(ThreeFs + Future Action Plan)에 맞게 작성해주세요.
    • Facts, Feelings, Findings, Future Action Plan. 즉, 사실, 느낀 점, 깨달은 점, 앞으로의 계획.


  • 신기한 것(ifdef라던가)과 포인터를 배웠습니다. 참 수업을 들으면 들을수록 스스로 '난 ㅂㅅ이구나~' 라고 느끼게 됩니다. 그런 생각이 드는 만큼 열심히 하겠습니다... -최지혁




6. 숙제 제출


6.1. 천준현


6.2. 최지혁


 
 2.
 * 빌드: 소스코드에서 실행 exe로 만들때 전처리,컴파일,링크를 하는 것
 * #이 붙는 것은 모두 전처리를 이용한다 (include define ifdef endif ...)
 *포인터에서의 * 과 & : * - 1. *a 로 a의 메모리 주소에 접근
                      & - 2. data*로 자료형 뒤에 붙어 이게 포인터임을 알려줌
 *call by value/reference : value는 변수에 저장된 값을 불러 오는 것, 그래서 원래 변수의 값은 변하지 않는다.
                            reference는 변수의 주소를 불러 오는 것, 주소로 직접 가서 변수의 값을 바꿀 수 있다.

 3.
 *stack - push/pop : stack은 선형구조라 맨 끝의 데이터부터 차례차례 손을 댈 수 밖에 없다. stack이란 메모리에서 데이터를 집어넣는 걸 push 꺼내는 걸 pop이라 한다. 이걸 하는 방법은 포인터를 이용해서 데이터를 넣고 뺀다.
 
 *queue - push/pop : 메모리에 먼저 들어온(push) 것 부터 나가는(pop), 선입선출방식이다. 

 *line feed : 아스키 코드에서 16진수로 0A 이다. 기능은 커서를 현재 행의 다음 행으로, 즉 아래로 내리게 하는 것이다.

 *carriage return : 아스키 코드에서 16진수로 0D 이다. 기능은 커서를 현재 행의 맨 좌측으로 옮기게 하는 것이다.
 
 *SIMD : 병렬 프로세서의 한 종류로, 하나의 명령어로 여러 개의 값을 동시에 계산하는 방식이다. 벡터 프로세서에서 많이 사용되는 방식으로, 비디오 게임 콘솔이나 그래픽 카드와 같은 멀티미디어 분야에 자주 사용된다


(날린거 복구 하느라 부득이하게 이렇게 할게요 ㅜㅜ (최지혁))


6.3. 박인서 ¶






6.3.1. 전처리기 내용 요약 


##빌드란 소스코드를 실행파일로 만들 때 필요한 작업으로 전처리, 컴파일, 링크가 있다.

##이중에 전처리는 필요한 파일을 좀더 .C파일에 넣어주는 작업을 의미한다.

##전처리기는 전처리를 해주는 문구를 의미한다.

##대표적인 전처리기는 #include, ~해로운 전처리기인~ #define, #ifdef, #ifndef, #endif 등이 있다.

###ifdef->#define으로 정의하면 #endif나올 때 까지 실행, #define으로 정의 안하면 #endif나올 때 까지 실행X

###ifndef->#define으로 정의 안하면 #endif나올 때 까지 실행, #define으로 정의하면 #endif나올 때 까지 실행X





6.3.2. 소문이 무서운 포인터 내용 요약 


##모든 메모리에는 메모리 위치(주소)를 가지고 값이 저장된다.

##포인터 : 저장하는 값이 메모리 주소인 자료형, 변수

##정의) int *p=&a;->정수 a라는 값의 주소값을 p에 저장

##*의 의미-이항연산자, data type, 단항연산자

##*p는 a와 완전 같음

##*와 &는 완전 반대

##&(&a)는 쓰는게 불가능

##but **은 가능->더블 포인터

##***, **** 등이 모두 다 가능->다중포인터~고통받을 듯~

##call_by_value(메모리 주소를 안 넘김) vs call_by_reference(메모리 주소를 넘김)





6.3.3. 용어조사 


##Stack : 데이터를 push하는 곳과 pop하는 곳이 같은 선형구조

##Queue : 데이터를 push하는 곳과 pop하는 곳이 같은 선형구조

##push/pop : 데이터를 넣는 것을 push, 데이터를 꺼내는 것을 pop이라 한다.

##Line feed : 커서의 위치를 아랫줄로 이동

##Carriage return : 커서의 위치를 맨 앞으로 이동

##SIMD : 단일 명령어로 복수의 데이터를 처리

6.3. 박인서

6.3.1. 전처리기 내용 요약

  • 빌드란 소스코드를 실행파일로 만들 때 필요한 작업으로 전처리, 컴파일, 링크가 있다.
  • 이중에 전처리는 필요한 파일을 좀더 .C파일에 넣어주는 작업을 의미한다.
  • 전처리기는 전처리를 해주는 문구를 의미한다.
  • 대표적인 전처리기는 #include, ~해로운 전처리기인~ #define, #ifdef, #ifndef, #endif 등이 있다.
  • #ifdef->#define으로 정의하면 #endif나올 때 까지 실행, #define으로 정의 안하면 #endif나올 때 까지 실행X
  • #ifndef->#define으로 정의 안하면 #endif나올 때 까지 실행, #define으로 정의하면 #endif나올 때 까지 실행X

6.3.2. 소문이 무서운 포인터 내용 요약

  • 모든 메모리에는 메모리 위치(주소)를 가지고 값이 저장된다.
  • 포인터 : 저장하는 값이 메모리 주소인 자료형, 변수
  • 정의) int *p=&a;->정수 a라는 값의 주소값을 p에 저장
  • *의 의미-이항연산자, data type, 단항연산자
  • *p는 a와 완전 같음
  • *와 &는 완전 반대
  • &(&a)는 쓰는게 불가능
  • but **은 가능->더블 포인터
  • ***, **** 등이 모두 다 가능->다중포인터~고통받을 듯~
  • call_by_value(메모리 주소를 안 넘김) vs call_by_reference(메모리 주소를 넘김)

6.3.3. 용어조사

  • Stack : 데이터를 push하는 곳과 pop하는 곳이 같은 선형구조
  • Queue : 데이터를 push하는 곳과 pop하는 곳이 같은 선형구조
  • push/pop : 데이터를 넣는 것을 push, 데이터를 꺼내는 것을 pop이라 한다.
  • Line feed : 커서의 위치를 아랫줄로 이동
  • Carriage return : 커서의 위치를 맨 앞으로 이동
  • SIMD : 단일 명령어로 복수의 데이터를 처리




Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:29:58
Processing time 0.0420 sec