본문 바로가기

Programming/C Programming

(6)
C언어 메모리 동적할당 //방송통신대학교 컴퓨터과학과 2023년도 1학기 김형근 교수님의 C프로그래밍 수업을 기반으로 작성한 글입니다. 말록 말록 말록... 항상 어떤 강의에서나 맨 뒷부분에 나와서 제대로 수업이 진행된 적이 없다! 이번에도 마찬가지인 것 같으나.. 나는 제대로 공부해볼거다. 🌈기억공간 할당영역 데이터 영역 : 전역변수와 static 변수가 저장되는 영역 힙 영역 : 프로그래머의 필요에 의해 할당/소멸이 이루어지는 영역 스택 영역 : 지역변수와 매개변수가 저장되는 영역 🌈기억공간 확보 방법 (1) 메모리 정적 할당 (static allocation) 데이터 영역과 스택 영역 이용 프로그램 작성 단계에서 자료형 정의되며 기억공간의 크기도 결정 (2) 메모리 동적 할당 (dynamic allocation) 힙 영역..
C언어 파일처리 함수 //방송통신대학교 컴퓨터과학과 2023년도 1학기 김형근 교수님의 C프로그래밍 수업을 기반으로 작성한 글입니다. 🌈 파일 (File) : 보조기억장치(디스크)에 들어있는 정보들의 모임 일련의 byte들로 구성 C 프로그램은 운영체제를 통해서 파일을 읽거나 씀 가독성 있는 문자들로 구성된 텍스트 파일 (text file), 텍스트를 포함한 모든 종류의 자료를 컴파일한 기계어로 구성된 2진 파일 (binary file)로 구분 🌈 파일 입/출력 방법 (1) 파일포인터 선언 (2) 파일열기 (fopen()) (3) 파일과 프로그램 사이 스트림 (stream) 생성 (4) 데이터 입/출력 수행 (4) 파일닫기 (fclose()) (5) 스트림 (stream) 소멸 >> 파일포인터 선언 형식 : FILE *(변수..
C언어 Structure 그것이 문제로다 하지만 덜 문제다 //방송통신대학교 컴퓨터과학과 2023년도 1학기 김형근 교수님의 C프로그래밍 수업을 기반으로 작성한 글입니다. 🌈 구조체 (Structure) : 서로 다른 자료형을 갖는 자료들의 모임을 하나의 자료형으로 정의 구조체 정의 구조체 변수의 선언 * 멤버의 참조는 도트 연산자(.)를 사용 //다양한 구조체 변수 선언방법 //(1) 일반적인 변수 선언방법과 동일 structure score { char no[4]; int kor; }; structure score X, Y; //(2) structure 정의와 함께 structure score { char no[4]; int kor; } X, Y; //(3) 예약어 typedef 이용 typedef structure score { char no[4]; int..
C언어 Pointer 그것이 문제로다 //방송통신대학교 컴퓨터과학과 2023년도 1학기 김형근 교수님의 C프로그래밍 수업을 기반으로 작성한 글입니다. 제곧내. C언어의 꽃인 Pointer. 🌈변수의 자료전달 방법 (1) 값에 의한 전달 (call by value) 실 매개변수와 형식 매개변수 사이에 값의 전달 호출한 함수의 실행이 끝난 다음 실 매개변수의 값은 변하지 않음 (2) 참조에 의한 전달 (call by reference) 호출함수와 피 호출함수의 매개변수 값을 서로 교환할 수 있는 자료전달 방법 값을 전달하는 것이 아니라 실 매개변수의 값이 들어있는 주소 값이 전달 주소 연산자(&, Ampersand), 내용 연산자(*, Astrisk) 🌈포인터 (Pointer) : 특정 데이터가 저장된 기억장소의 주소(번지) 값을 가지고 있는 ..
C언어 기본 함수 & 연산자 Look Up Table //방송통신대학교 컴퓨터과학과 2023년도 1학기 김형근 교수님의 C프로그래밍 수업을 기반으로 작성한 글입니다. C언어를 쓰다보면 기본적인 문법구조가 생각 안나기 마련.Python과 같은 언어를 섞어서 쓰면 더 헷갈리기 마련.그리하여 준비하였다! Look Up Table! 여기저기 구글링하는 것도 짧고 간단한 방법이지만, 더 간결하게 더 효율적으로 잘 활용하길 바라며.. 🌈 함수의 구분 (1) 표준함수 : C언어 자체에서 제공하는 함수 (2) 사용자 정의 함수 : 사용자가 정의하여 사용하는 함수 🌈 표준함수>표준입출력함수 printf() / scanf() / getchar() / putchar() / gets() / puts() (1) printf("출력양식", 변수1, 변수2, …); char c='A..
C언어 용어정리 - 코딩, 프로그래밍, 컴파일, 소스코드, 변수? //방송통신대학교 컴퓨터과학과 2023년도 1학기 김형근 교수님의 C프로그래밍 수업을 기반으로 작성한 글입니다. 들입다 시작하지 말고 정확히 용어를 이해해보자. 컴파일러? 프로그래밍? 코딩? 매개변수? 참조변수? 🌈프로그래밍 개발단계 (1) 프로그램 목적정의 (2) 프로그램 설계 (3) 소스코드 작성 (4) 컴파일/링크 (5) 실행 (6) Test & Debug (7) 유지보수 🌈기본 용어 정리 코딩 (coding) : 소스파일 (source) 생성 컴파일 (compile) : 소스파일 → 목적파일 (object) 변환, 프로그래밍 언어 (high level) → 기계어 (low level) 변환 (e.g. 어셈블러 (assembler), 인터프리터 (interpreter)) 링킹 (linking) : ..