프로그래밍 용어 정리

헤스더·2024년 1월 20일
0
post-thumbnail

이 글은

프로그래밍 공부를 진행할 때 알고 있으면 유용한 용어들을 정리한 글입니다!

참고문헌
▷ 혼자 공부하는 C언어-혼공 용어 노트(한빛미디어)
▷ 챗GPT



ㄱ-

  • 기억 부류(storage class)
    : 변수를 사용 범위와 메모리에서의 존재 기간에 따라 나눈 것.
  • 구조체(structure)
    : 형태가 서로 다른 변수들을 묶는 자료형. 한 번 형태가 정의되면 그 이후부터는 구조체 변수, 구조체 배열, 구조체 포인터 등으로 활용할 수 있다.

ㄴ-

  • 논리 연산자

    논리 연산자 종류
    ①논리 AND('&&')
    : 양쪽 피연산자가 모두 참일 때만 전체 식이 참이 된다.
    ②논리 OR('||')
    : 양쪽 피연산자 중 하나라도 참이면 전체 식이 참이 된다.
    ③논리 NOT('!')
    : 피연산자의 논리 상태를 반전시킨다. 참이면 거짓으로, 거짓이면 참으로 변한다.


ㄷ-

  • 디버깅(debugging)
    : 에러를 수정하는 것.
  • 다차원 배열(multi-dimensional array)
    : 배열을 요소로 갖는 배열. 2차원 배열에서는 일반 배열(1차원 배열)을 요소로 갖고, 3차원 배열에서는 2차원 배열을 요소로 갖는 형식이다.

ㄹ-

  • 레지스터(register)
    : CPU의 메모리. 연산할 데이터와 연산 후의 결과를 임시로 저장한다.
  • 로드(load)
    : 메인 메모리에서 레지스터로 값을 복사하는 과정.

ㅁ-

  • 메인 함수(main fuction)
    : 코드 실행이 제일 처음 시작되고 제일 마지막으로 끝나는 곳. 줄여서 'main' 또는 '메인'이라고도 한다.

    🔎cf. 함수, 블록

    • 함수(function)
      : 프로그램에서 특정 작업을 수행하기 위해 그룹화된 코드 블록. 이름을 가지며, 필요에 따라 매개변수(parameter)를 받아들이고, 어떤 값을 변환할 수 있다. 프로그램의 메인 논리를 함수로 나누면 코드의 모듈화와 재사용성이 증가한다.
    • 블록(block)
      : 중괄호 '{}'로 둘러싸인 코드의 일련의 문장들. 하나의 실행 단위를 나타낸다.

ㅂ-

  • 변환 문자
    : 출력 시 데이터의 형태에 따라 변숫값을 텍스트로 바꾸어주거나, 입력 시 텍스트를 알맞은 변숫값으로 바꾸어주는 문자.

    🔎cf. 자주 사용하는 변환문자

    • int → %d (정수)
    • double → %lf (실수)
    • char → %c (문자)
    • char배열 → %s (문자열)
  • 비트(bit)
    : 컴퓨터 저장장치의 가장 작은 단위. 스위치와 같이 두 가지 상태를 나타낸것. 1(혹은true)과 0(혹은 false)으로 나타낸다.

  • 바이트(byte)
    : 컴퓨터 저장장치의 단위. 1바이트는 8비트. 16진수를 사용하는 이유는 4비트 단위로 이진수 값을 표현하기 위해서이다.

    🔎컴퓨터의 저장 단위

    • 1byte = 8bit
    • 1KB(킬로바이트) = 2^10byte (2^10=1024)
    • 1MB(메가바이트) = 2^10KB = 2^20byte
    • 1GB(기가바이트) = 2^10MB
    • 1TB(테라바이트) = 2^10GB
  • 변수(variable)
    : 데이터를 저장하는 메모리의 공간

    🔎변수 관련 용어

    • 변수 선언: 어떤 형태와 이름을 가지고 사용한다고 알리는 것
    • 할당: 변수에 값을 넣거나 저장하는 것
    • 참조: 변수에 접근하는 것

    🔎변수의 종류

    • 지역 변수(Local Variable)
      ▷ 특정 함수나 블록 내에서 선언되고 그 범위는 해당 함수나 블록 내로 제한된 변수.
      ▷ 함수가 호출되면 지역 변수가 생성되고, 함수가 종료되면 해당 변수가 소멸한다.
      ▷ 다른 함수에서는 직접 접근할 수 없다.
    • 전역 변수(Global Variable)
      ▷프로그램 전체에서 접근 가능하며, 어느 곳에서나 참조할 수 있는 변수.
      ▷ 프로그램이 시작될 때 생성되며, 프로그램이 종료될 때까지 존재한다.
      ▷ 여러 함수에서 공유되므로 주의해서 사용해야 한다.
    • 정적 변수(Static variable)
      ▷ 함수 내에서 선언되지만, 지역 변수와 달리 함수가 종료되어도 값이 유지되는 변수.
      ▷ 다른 파일에서 접근이 어려워 해당 파일 내에서만 사용된다.

    const 변수
    : 한 번 초기화하면 값을 바꿀 수 없는 변수. 값이 항상 고정되어 코드가 실행되는 동안은 바꿀 필요가 없을 때 사용한다.


ㅅ-

  • 소스 파일(source file)
    : 프로그래밍 언어의 문법에 맞게 작성한 문서 파일.
  • 소스 코드(source code)
    : 코드. 프로그래밍 언어의 문법에 맞게(=컴퓨터가 이해하고 실행할 수 있는 명령을 포함하는) 작성한 글.
  • 상수(constant)
    : 값을 한 번 정하면 프로그램이 끝날 때까지 변하지 않는 변수. 원주율 값처럼 값이 정해져 있고 변하면 안되는 경우에 주로 사용한다.
  • 쓰레기 값(garbage(value))
    : 변수로 저장했던 공간에 남아있는 다른 프로그램이 사용한 흔적(값).

ㅇ-

  • 아스키 코드(ASCII code)
    : 사람이 사용하는 기호를 컴퓨터 안에서 표현하는 방법에 대해 약속한 것.

ㅈ-

  • 정규화(normalization)
    : 데이터의 일관성, 최소한의 데이터 중복, 최소한의 데이터 유연성을 위한 방법이며 데이터를 분해하는 과정.

  • 주석문(comment)
    : 실행 결과에 영향을 미치지 않는 문장. 소스 코드를 설명하는 내용을 담게 된다. 언어별로 주석처리 방법이 다르다.

    🔎주석 종류
    (주석처리코드 그대로 적으면 실제 주석처리되어 화면에 출력되지 않아 본의아니게 설명이 좀 복잡해졌습니다😅)

    • C / C++ / C# / JAVA / Javascript / Swift / Kotlin ...
      ▷ 한줄 //주석
      ▷ 여러줄 // 안에 ** 사이에 주석
    • Python / Ruby
      ▷ 한줄 #주석
      ▷ 여러줄(작은or큰따옴표) '''주석''' or """주석"""
    • HTML / XML
      ▷ 줄수 상관없이 <> 안에 !--주석--
    • CSS
      ▷ 줄수 상관없이 // 안에 ** 사이에 주석
    • MySQL
      ▷ 한줄 #주석
      ▷ 여러줄 // 안에 ** 사이에 주석
  • 제어 문자(control character)
    : 문자는 아니지만, 출력 방식에 영향을 주는 문자. 텍스트를 제어하거나 출력 장치를 제어하기 위한 것. 줄바꿈(\n), 탭(\t), 복귀(/x) 등등.

  • 자료형(data type)
    : 자료의 형태. 자료형에 따라 컴퓨터가 어떻게 처리하는지 달라진다.

    종류

    • 정수형: int(4bytes), short(2bytes), long(4bytes)
    • 문자형: char(1byte)
    • 실수형: double(8bytes)

ㅊ-

  • 초기화(initialize)
    : 변수, 배열, 구조체에 값을 처음으로 대입하는 것.
//변수 초기화의 유형
/*1. 선언과 동시에 초기화*/
int num1 = 3;
/*2. 사용자 입력에 의한 초기화*/
int num2;
scanf("%d", &num2);
/*3. 코드 중간에 초기화*/
int num3;
num3 = 3;

//배열 초기화의 유형
/*1. 선언과 동시에 초기화*/
int ary1[5] = {1, 2, 3, 4, 5};
int ary2[5] = {1, 2, 3};
int ary3[] = {1, 2, 3};
/*2. 개별 원소를 초기화*/
int ary1[4] = 3; //이 경우 주로 반복문을 이용해 초기화
for(int i = 0; i<5; i++)
{
	ary1[1] = 0;l
}
/*3. memset을 이용한 초기화*/
memset(ary1, 0, sizeof(ary1)); //모든 원소를 0으로 초기화

ㅋ-

  • 컴파일(compile)
    : 소스 파일을 컴퓨터가 이해하는 기계어로 바꾸는 과정.

    🔎컴파일 3단계
    ① 전처리(Preprocessing)
    : 소스 코드에 전처리 지시문을 처리하고, 헤더 파일을 포함하거나 매크로를 확장하여 중간 코드를 생성하는 단계.
    ② 컴파일(Compliation)
    : 전처리된 코드를 기계어로 번역하여 중간 코드나 어셈블리 코드를 생성하는 단계. 문법적 오류를 검사하고 기계어 코드로 변환한다.
    ③ 링크(Linking)
    : 여러 컴파일된 파일을 합쳐 하나의 실행 파일로 만들고, 필요한 외부 라이브러리와 연결하는 단계. 최종적으로 실행 가능한 프로그램이 생성된다.


ㅌ-

  • 텍스트 파일(text file)
    : 프로그램이 외부 파일, 외부 네트워크 등과 통신할 때 데이터가 흐르는 길.
  • 토큰(token)
    : 프로그램에서 독립된 의미를 갖는 하나의 단위.

ㅍ-

  • printf 함수
    : 화면에 데이터를 출력하는 함수. print formatted의 약어. 변환 문자를 사용해서 변수에 맞는 자료형을 알려준다.

ㅎ-

  • 헤더 파일(header file)
    : 표준 라이브러리 하수의 원형 등을 포함하고 있는 파일. 줄여서 '헤더'라고도 한다. 라이브러리는 쉽게 가져다 스라고 미리 구현해둔 함수. #include라는 전처리 지시자로 불러들인다.

    string.h 헤더파일
    : 문자열 처리와 관련된 함수가 선언된 헤더 파일




마무리

단어는 꾸준히 추가될 예정입니다😄

0개의 댓글