쑤쑤_CS 기록장

[TIPS 20기]2. C언어 두번째 강좌 정리 본문

IT 지식 기록/TIPS - C 언어 수업 정리

[TIPS 20기]2. C언어 두번째 강좌 정리

(╹◡╹)_ 2019. 2. 13. 17:00
728x90


12월 31일, 2018년의 마지막 날

TIPS 20기 두번째 수업이 있었습니다..!

오늘 수업은 아래 순서로 진행되었습니다.

C언어 강의 - 4장. 상수와 변수 / 5장. 함수 / 6장. 표준출력 함수



[ 본격적인 강의 정리 ]


[4장] 상수와 변수

* 상수

= 컴파일러랑 나랑 약속한 값 (바꾸지 않겠다고 정함)

- 숫자형 상수

- 문자형 상수

: ‘문자’ -> 그 문자의 값을 숫자로 컴파일러가 변환합니다. 상수 라는 것은 다 숫자로 변환됩니다.

- 문자열형 상수

: “” 문자열이란 문자를 그룹지은 것을 의미합니다.

시스템 성능을 위해 문자열을 최소화 하는 것이 좋습니다. 문자열은 조금은 비효율적입니다.

* 진법

23 //10진법

023 //8진법

0x23 //16진법

으로, 숫자 앞에 함부로 0 을 붙이면 진법의 변화를 가져올 수 있으므로 안됩니다.

첫 번째는 무조건 숫자여야 됩니다. 앞 부분은 호환성 범위를 나타냅니다.

1.52e+3에서 e+3은 10의 3승을 의미합니다.

* 변수

: 데이터를 저장하기 위한 공간 으로, 주소를 기억하지 않으려고 사용합니다.

- 크기가 필요하며 이를 자료형으로 나타냅니다.

- C언어에서는 대소문자를 구별합니다.

- 컴파일러는 똑같은 표현 여러가지 중 자기한테 좋은 표현, 자기한테 맞는 표현을 사용할 수 있게 합니다.

- 변수 초기화 란, 내가 예상 가능한 형태로 만들어 놓는 것을 의미합니다.

- 진법의 변환 부분에서는 1, 2, 4, 8의 패턴만 알고있으면 활용 가능합니다.

[5장] 함수

* 함수 란 코드를 그룹 짓는 기술 입니다. 지난번 글과 마찬가지로, 왜?! C언어가 함수를 제공하기 시작했는가에 대한 의문으로 함수 내용을 시작하겠습니다.

함수의 기능으로는 2가지로 정리할 수 있는데,

1. 변화에 대처

2. 생각의 범위를 줄여 나가는 기술

입니다.

1. 함수란 ‘변화에 대응하는 무기’라고 할 수 있습니다. 코드 기능 수정 시, 프로그램의 변화를 최소화 할 수 있도록, 효과적으로 해결하는 방법입니다. 따라서 함수는 중복이 있어야만 쓰이는 것은 아닙니다.

2. 생각의 범위를 줄여 나가는 기술로 생각을 나누는 효과가 있습니다.

다음으로는 함수의 구조, 형태를 알아보겠습니다.

넘겨주고싶은 값들 은 값을 전달해주는 역할을 합니다. Int a, int b 등 지역변수를 선언합니다. 이때 주의할 점은 int 같은 타입을 다 적어야 된다는 점 입니다.

반환 return은 종료의 의미로, 밑에 코드는 사용되지 않고 무시됩니다.

- 호출하기 관련하여, 호출자는 caller / 피호출자는 callee 라 합니다.

- 반환값 키워드인 void는 매력적입니다. 함수를 쓰는 사람이 편하게 쓸 수 있도록 합니다.

정해져 있지 않다 = 만능이다 = 무엇이든 가능하다 = void 라고 생각할 수 있습니다.

- main 함수가 프로그램의 시작 함수 인 것으로 약속되어있습니다.

- [함수 원형] 컴파일러는 코드의 위쪽에서 아래쪽으로 내용을 읽으며 번역합니다.

컴파일하는 시점에 모르는 함수가 있으면 안됩니다. 이때, 서로 호출하는 형태의 경우 문제가 발생합니다. (올릴 수 없는 형태)

따라서 함수의 원형을 선언해놓습니다. 피호출자 위에 GOOD. 호출자가 피호출자 밑에 있도록.

int Sum(int, int); //변수명은 생략 가능, 개수나 자료형만 필요하기 때문, 생략x가 원칙임

[6장] 표준출력함수

- 라이브러리 : 소스 주기 싫어서 -> 실제 사용하는 내용만 실행 파일에 포함

- 변경x, 소스파일 -> 오브젝트 파일. obj (+)단점 : 모두 다 실행파일에 들어감. 사이즈 up

- 함수의 원형 모아서 헤더파일

* 전처리기 : 컴파일러 지시어(컴파일러에게 명령함). 내가 컴파일러에게 하고싶은 말은 적는것.

(;를 사용하지 않음, #을 사용함)

- #include 전처리기 : 먼저 읽어야 처리할 수 있음. stdio : standard input output

- #define 전처리기 : 치환문. 상수나 명령문을 치환하는 문법. 상수가 변할때 대체하기 위함

- C표준 라이브러리

- 표준 출력 함수 putc

- 문자열 출력 함수 printf : print + format . 문법이 아닌 표준라이브러리의 함수이다

상수를 먼저 쓰는 습관이 좋다!

ex) int value = 3 * step;


수업시간에 선생님께서 언급해주신 관련된 내용 블로그 링크 입니다.

https://blog.naver.com/tipsware/221018307213

<'문자열 상수'의 잘못된 사용에 대하여>

https://blog.naver.com/tipsware/221427072910

<함수에 대한 못다 한 이야기(1)>

https://blog.naver.com/tipsware/221427178231

<함수에 대한 못다 한 이야기(2)>

https://blog.naver.com/tipsware/221354044966

<함수에서 가변 인수(인자)를 사용하려면!>

https://blog.naver.com/tipsware/221291750140

<void형 함수의 반환값은 정말 사용을 못하는가?>

https://m.blog.naver.com/PostView.nhn?blogId=tipsware&logNo=221195684551&referrerCode=0&searchKeyword=scanf

[실습 과제]scanf 함수 만들어보기

https://blog.naver.com/tipsware?Redirect=Log&logNo=221010221853&from=postView

<인수에 대하여>

https://blog.naver.com/tipsware/221275416466

[용어] 절대 경로, 상대 경로, 작업 경로에 대하여

https://blog.naver.com/tipsware/221275585536

<C언어 표준 함수를 위한 헤더 파일과 소스 파일은 어디에 있을까?>

#Tips강좌 #Tips프로그래밍강좌 #김성엽 #지식나눔강좌 #tipssoft #20기





728x90
Comments