코락 CoRock
코딩하는 락스타
코락 CoRock
  • 분류 전체보기 (393)
    • frameworks (19)
      • spring (19)
      • spring-boot (0)
      • testing (0)
    • languages (94)
      • java (39)
      • kotlin (0)
      • python (42)
      • r (13)
    • libraries (0)
    • programming (239)
      • android (13)
      • c (17)
      • cpp (22)
      • database (18)
      • design-pattern (4)
      • data-structures (11)
      • git (8)
      • hadoop (6)
      • html-css (7)
      • issue (4)
      • javascript (26)
      • jsp (34)
      • os (29)
      • php (6)
      • preferences (19)
      • etc (15)
    • discography (37)
      • k-pop (18)
      • pop (19)
    • blog (3)

블로그 메뉴

  • Programming
  • Java
  • JavaScript
  • Discography
  • K-Pop Songs
  • Pop Songs
  • Blog
  • Guestbook

공지사항

인기 글

  • RDP Wrapper로 원격 데스크톱 설치부터 사용까지!
    2018.11.04
    RDP Wrapper로 원격 데스크톱 설치부터 사용까지!
  • [Database] ERWin 설치 방법
    2018.04.19
    [Database] ERWin 설치 방법
  • 이 친구 닉값하네? WebStorm 설치 완벽 가이드!
    2019.02.18
    이 친구 닉값하네? WebStorm 설치 완벽 가이드!
  • 아프니까 청춘이다! Oracle 11g 완전삭제하기
    2018.04.10
    아프니까 청춘이다! Oracle 11g 완전삭제하기
  • [Python] SVM(Support Vector Mach⋯
    2019.07.03
    [Python] SVM(Support Vector Mach⋯

태그

  • 자바스크립트
  • oracle
  • Spring
  • python
  • Java
  • javascript
  • linux
  • r
  • jsp
  • Android
  • 파이썬
  • CentOS

최근 댓글

  • 도움이 되셨다면 좋겠네요 :)
    코락 CoRock
  • 자세히 알려주셔서 감사드립니다 ^_^
    비산동감자
  • 제 글이 유용했다니 뿌듯하네요~ ㅎㅎ
    코락 CoRock
  • 그림과 함께 꼼꼬미 글이 작성되어 정리하는데 도움이 되었습⋯
    v_aaaaa_v
  • 덕분에 도움 많이 되었습니다. 감사합니다.
    Dev_Aaron

최근 글

  • [Core C] 문자열 | String
    2021.01.19
    [Core C] 문자열 | String
  • [Core C] Array | 배열
    2021.01.18
    [Core C] Array | 배열
  • [R] Java와 R 연동
    2020.08.25
    [R] Java와 R 연동
  • git 지역 저장소에서 원격 저장소까지의 메커니즘
    2020.08.18
    git 지역 저장소에서 원격 저장소까지의 메커니즘
  • 검색 엔진 최강자! 구글에 사이트맵 등록하기
    2020.08.13
    검색 엔진 최강자! 구글에 사이트맵 등록하기

티스토리

반응형
hELLO · Designed By 정상우.
코락 CoRock

코딩하는 락스타

programming/c

[Core C] Functions (함수)

2018. 1. 24. 00:21
반응형

Real World의 동작 표현하기

우리가 프로그래밍하는 이유는 일상생활 속에서의 문제 상황들을 해결하기 위함이라고 소개한 바 있습니다. 마찬가지로 함수를 배울 때 현실 세계의 인간과 연관 지으면 좀 더 쉽게 이해할 수 있습니다. 프로그래밍과 사람은 많이 닮은 점이 있는데, 프로그래밍 역시 사람이 만든 결과물이기 때문입니다. 사람이 먼저 아니겠습니까. 앞서 다룬 변수와 함수를 잘 이해한다면 나중에 배우게 될 구조체와 객체지향 패러다임에서 중요하게 다루는 클래스의 이해에 큰 도움이 될 것입니다.

 

사람을 어떤 물체 중 하나라고 생각해봅시다. 사람이라는 물체는 키, 몸무게, 시력 등 어떤 속성을 가질 수도 있으며 게임을 한다, 운동한다, 먹는다 등등 어떤 동작을 수행할 수 있습니다. 마찬가지로 코딩에서도 어떤 개체에 대해 특정한 속성과 동작을 가질 수 있는데 코딩에서 전자를 변수로 표현하고, 후자를 오늘 배우게 될 함수로 표현합니다.

 

함수의 정의

함수란 특정한 기능을 수행하는 코드 뭉치를 말합니다. 우리는 이미 함수를 사용한 적이 있습니다. 어떤 코드를 작성해도 항상 있던 main이라는 녀석 역시 함수입니다. 이외에도 printf, scanf, ... 등을 사용해 본 적이 있는데, 이 녀석들 역시 함수입니다. printf나 scanf와 같이 함수를 이렇게 사용하자라고 미리 약속하고 프로그램에서 바로 사용할 수 있는 함수들을 표준 라이브러리 함수라고 합니다.

 

함수의 선언 및 사용

맨 처음 변수를 배울 때 처럼, 함수도 마찬가지로 먼저 선언을 하고 사용하면 됩니다. 다만 함수는 좀 특별한 녀석이기 때문에 선언과 사용이라는 용어 대신 정의와 호출이라는 용어를 사용합니다.

 

함수를 만들 때 고려할 점

이 함수의 이름은 어떻게 지을까?

이 함수가 ��능을 올바르게 동작하게 하려면 필요한 데이터는 어떤 것이 있을까?

함수가 실행되고 나면 결과 값은 무엇인가?

 

반환형 함수명(매개변수1, 매개변수2, ...)
{
	// 함수가 수행하는 명령
    // 여러 로직이 들어 있다.
}

 

  1. 반환할 것이 있고, 입력이 없는 경우
  2. 반환할 것이 있고, 입력도 있는 경우
  3. 반환할 것이 없고, 입력이 있는 경우
  4. 반환할 것이 없고, 입력도 없는 경우

 

ㅇ

반응형
저작자표시 비영리 변경금지 (새창열림)
    'programming/c' 카테고리의 다른 글
    • 주말숙제
    • [Algorithm] Baby Gin
    • [DAY 03] Program Looping
    • [DAY 07] 포인터 2
    코락 CoRock
    코락 CoRock
    A COder dreaming of being a ROCKstar
    다음 글
    [Algorithm] Baby Gin
    이전 글
    [DAY 03] Program Looping

    티스토리툴바