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

[ 2일차 복습 ] C언어 개념과 Vi 편집기 사용

개발자혜콩 2026. 2. 4. 16:00

1. 오늘 학습내용

1-1. Vi 편집기 개념

  • Vi 편집기 기본 원리
    • Vi는 모드 기반 편집기
    • 동작 흐름
      명령모드 ↔ 입력모드
    • 명령모드
      • 방향키 사용 가능
    • 입력모드
      • 방향키 사용 불가
      • Esc → 명령모드로 전환

1-2. Vi 편집기 사용법

  • 수정
    • Esc → 방향키 이동 → 삭제할 위치에서 x
  • 입력
    • i : 현재 커서 위치에서 입력
    • Shift + a : 줄 맨 끝에서 입력
  • 저장 및 종료
    • :wq : 저장 후 종료
    • :q! : 저장 안 하고 종료

1-3. 리눅스 파일 관리 명령어

  • 파일 삭제
    • rm 파일이름
  • 파일 이름 변경
    • mv 기존이름 새이름

1-4. 파일 생성 및 Vi 편집기 실습

  • 파일 생성
    • vi strawberry.c
  • 입력모드 진입
    • i
  • 코드 작성 진행

1-5. 컴파일 및 실행

  • 컴파일
    • gcc -o 실행파일이름 소스파일이름
  • 실행
    • ./실행파일이름

1-6. C 언어 개념

  • void* (보이드 포인터)
    • 자료형이 정해지지 않은 포인터
    • 모든 타입의 주소 저장 가능
    • 사용 시 형변환 필수
  • 형변환 종류
    • implicit (묵시적 형변환)
    • explicit (명시적 형변환)
  • 소수점 손실 등으로 에러 발생 가능
  • 명시적 형변환을 사용하는 것이 안전
  • 1의 보수 / 2의 보수
    • 음수 표현 방식
    • 컴퓨터 내부 정수 연산에 사용
  • 비트 연산
    • 비트단위 연산
    • 시스템/임베디드 프로그래밍에서 중요
  • 조건 연산자
    • 문법
      (조건식) ? (참일 때) : (거짓일 때)

 

2. 헷갈렸던 것 1개

  • Vi 편집기 모드 개념
    • 입력모드에서는 방향키 사용 불가
    • Esc로 명령모드 전환 후 이동해야 함

 

3. 나중에 다시 볼 키워드

  • void* 포인터
  • 명시적 형변환
  • 1의 보수 / 2의 보수
  • 비트 연산
  • 조건 연산자