산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C++ 함수 완전 정복: 실전 코드 예제로 이해하기

C++에서 함수는 무엇인가?

함수는 입력을 받아 처리하고 결과를 반환하는 독립적 코드 블록입니다. 반복 작업을 함수로 캡슐화하면 코드 중복 방지, 다른 매개변수 공급으로 프로그램 전반 또는 프로젝트 간 로직 재사용 용이.

모든 C++ 애플리케이션은 최소 하나의 함수 main() 포함. 나머지 코드는 목적별 소규모 함수로 구성해 가독성·유지보수성 향상.

현대 C++ 표준 라이브러리 풍부한 내장 함수 제공. 직접 구현 없이 호출만으로 사용 가능.

이 튜토리얼에서 다룰 내용:

함수 사용 이유

함수 다중 이점:

내장 함수

표준 라이브러리 함수는 사전 정의돼 바로 사용. 구현 제공 불필요.

예제 1: cmath의 sqrt() 사용

#include <iostream> #include <cmath> using namespace std; int main() { double num, squareRoot; cout << "Enter number: "; cin >> num; squareRoot = sqrt(num); cout << "The square root of " << num << " is: " << squareRoot; return 0; } 

출력:

C++ 함수 완전 정복: 실전 코드 예제로 이해하기

실행 프로그램 스크린샷:

C++ 함수 완전 정복: 실전 코드 예제로 이해하기

코드 분석:

  1. iostream 입출력 함수 포함.
  2. cmath로 sqrt() 접근.
  3. std 네임스페이스 사용으로 표준 이름 접두사 생략.
  4. main() 함수에서 프로그램 로직.
  5. num, squareRoot를 double 선언.
  6. 사용자 숫자 입력 요청.
  7. 입력 num 읽기.
  8. sqrt() 호출로 num 제곱근 계산.
  9. 결과 출력.
  10. 성공 실행을 0 반환으로 알림.

사용자 정의 함수

개발자가 애플리케이션 특화 로직 캡슐화 위해 커스텀 함수 생성 가능.

예제 2: 간단한 인사 함수

#include <iostream> using namespace std; void sayHello() { cout << "Hello!"; } int main() { sayHello(); return 0; } 

출력:

C++ 함수 완전 정복: 실전 코드 예제로 이해하기

코드 스크린샷:

C++ 함수 완전 정복: 실전 코드 예제로 이해하기

설명:

  1. iostream 콘솔 I/O 포함.
  2. std 네임스페이스 스코프 진입.
  3. sayHello() 인사 출력 함수 정의.
  4. main()에서 sayHello() 호출.
  5. 성공 종료로 0 반환.

함수 선언/프로토타입

함수가 main() 이후 정의되면 컴파일러가 시그니처 미리 알 필요. 프로토타입이 본문 없이 인터페이스 정보 제공.

프로토타입 예:

int addFunc(int, int);

반환 타입, 함수 이름, 매개변수 타입만 필수; 매개변수 이름은 선택.

함수 정의

프로토타입이 인터페이스 알리면 정의가 실행 본문 제공.

정의 예:

int addFunc(int num1, int num2) { return num1 + num2; } 

문법

return_datatype function_name(parameter_list) { // function body } 

핵심 구성요소:

함수 호출

함수 실행 위해 이름 호출 및 필수 인자 제공.

호출 예:

int result = addFunc(3, 5);

인자 전달

인자는 함수 매개변수 리스트와 개수·타입 모두 일치해야. 불일치 시 컴파일 에러.

기본 매개변수 값 지정으로 호출자 인자 생략 허용.

예제 3: 프로토타입으로 두 수 더하기

#include <iostream> using namespace std; int addFunc(int, int); // 프로토타입 int main() { int x, y, sum; cout << "Enter two numbers: "; cin >> x >> y; sum = addFunc(x, y); cout << "The sum of " << x << " and " << y << " is: " << sum; return 0; } int addFunc(int num1, int num2) { return num1 + num2; } 

출력:

C++ 함수 완전 정복: 실전 코드 예제로 이해하기

스크린샷:

C++ 함수 완전 정복: 실전 코드 예제로 이해하기

설명:

  1. 필요 헤더와 네임스페이스 포함.
  2. addFunc() 프로토타입 선언.
  3. 사용자 두 정수 입력.
  4. 값과 함께 addFunc() 호출, 결과 저장.
  5. 합 출력.
  6. main() 이후 addFunc() 정의로 두 매개변수 더하는 로직 제공.

요약

C 언어

  1. C++ do-while 루프: 문법, 실전 예제, 중첩 루프
  2. C++ 포인터 완전 정복: 개념, 예제, 실전 활용
  3. C++ char 타입 마스터: 선언, ASCII 코드, 문자열 변환 기법
  4. C++ 연산자 오버로딩 실전 가이드: 문법, 접근법, 코드 예제
  5. C언어 calloc(): 제로 초기화 메모리 할당과 실전 예제
  6. 파이썬 람다 함수 마스터하기: 실용 예제 & 모범 사례
  7. 파이썬 round() 함수 완전 정복: 실용 예제로 이해하기
  8. 파이썬 map() 함수 마스터하기: 문법, 예제, 모범 사례
  9. Verilog 함수 마스터하기: 효율적인 RTL 설계를 위한 활용법
  10. C 함수 마스터: 선언, 정의, 호출, 인자 전달(값/참조), 재귀