포트폴리오/[IoT 기반 피지컬 AI 교육일지]

[ 3일차 복습 ] 함수 · 배열 · 포인터 기초

개발자혜콩 2026. 2. 10. 16:47

1. 오늘 학습내용

① 함수(Function)

  • 함수의 역할
    • 코드 재사용
    • 기능 단위 분리
  • 함수 구성
    • 반환형
    • 함수명
    • 매개변수
  • return
    • 함수 종료
    • 값 반환

② 배열(Array)

  • 같은 자료형의 연속된 메모리 공간
  • 인덱스는 0부터 시작
  • 배열 이름은 첫 번째 요소의 주소
 
        int arr[5];

③ 포인터(Pointer)

  • 주소를 저장하는 변수
  • & : 주소 연산자
  • * : 역참조 연산자
 
          int a = 10; int* p = &a;

④ 배열과 포인터의 관계

  • 배열 이름 = 포인터 상수
  • arr[i] == *(arr + i)
  • 배열을 함수 인자로 전달하면
    • 실제로는 포인터 형태로 전달

⑤ 문자(Character)

  • char 자료형 사용
  • 내부적으로는 ASCII 코드 값 저장
 
          char c = 'A';

⑥ 문자열(String)

  • 문자 배열
  • 문자열의 끝은 반드시 '\0' (NULL 문자)
 
        char str[ ] = "hello";
 
  • 문자열 관련 함수
    • strlen
    • strcpy
    • strcmp

2. 헷갈렸던 거

  • 배열 이름이 변수인지 주소인지 헷갈림
  • 포인터 *의 의미 (선언 vs 사용)
  • 문자열과 문자 배열의 차이
  • '\0'의 존재 이유

3. 나중에 다시 볼 키워드

  • 함수 선언 / 정의
  • 배열
  • 포인터
  • 배열과 포인터
  • 문자 / 문자열
  • NULL 문자