일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 파이썬
- 제이펍
- 불칸
- 혼공머신
- 컴퓨터그래픽스
- 머신러닝
- 혼공단
- 데이터분석
- 혼공학습단
- 네트워크
- 혼공C
- 혼공컴운
- 혼공
- 딥러닝
- 혼자공부하는네트워크
- 한빛미디어
- 혼자공부하는C언어
- 혼공네트
- 리뷰리뷰
- C++
- 혼공S
- 자바스크립트
- 나는리뷰어다
- 책리뷰
- vulkan
- OpenGL
- tutorial
- 혼공단5기
- 벌칸
- 혼공스
- Today
- Total
목록혼자공부하는C언어 (6)
Scientia Conditorium
[기본 미션] - 포인터의 핵심 내용을 정리하고 공유하기 포인터(Pointer) : 주소를 저장하기 위한 변수형 → 변수인데 속에 담긴 내용은 메모리 주소 즉, 메모리 주소를 저장하는 변수 포인터는 어떤 변수에 저장된 값에 직접적으로 접근하는 것이 아니라 주소를 이용해서 간적접으로 접근하는 방식이다. 포인터의 핵심이라고 하면 메모리 주소와 변수이다. 포인터의 용도 설명 1. 큰 데이터를 매개변수로 사용할 때 const 배열에 오소가 10만개 있다고 하면, 매개변수 복사하느라 메모리와 시간 낭비. 포인터로 첫 번째 요소의 주소만 전달하면 모든게 해결 2. 반환 값이 둘 이상일 때 min, max 코드 참조 포인터로 함수 안에서 원본을 직접 변경하는 반환이랑 마찬가지 3. 동적 메모리 할당 함수의 범위에 상..
[기본 미션] - 직접 정리한 키워드 공유하기 [배열(array)] 동일한 자료형을 여럿 담을 수 있는 자료 구조 배열 안에 있는 각 데이터를 요소(element)라고 부름 몇 개의 데이터를 담을지 결정한 뒤에는 그 수를 바꿀 수 없음(단, 내용 변경은 가능) [배열의 색인] 대부분의 프로그래밍 언어에서 배열의 색인은 0부터 시작 -> 첫 번째 = 0, 두 번째 = 1 그 이유는 메모리 때문. 첫 번째 요소(시작)로부터 오프셋(offset) 얼마만큼 떨어져 있는지를 판단 C#과 달리 new를 반드시 사용할 필요가 없음 배열에 접근하는 법은 C#과 동일 모든 기본 자료형 변수(char, int, float)를 new 없이 사용할 수 있었던 이유는 바로 스택 메모리에 할당됐기 때문 기본 자료형을 함수 매개변..
[기본 미션] - 함수의 유형을 정리하여 공유하기 반환형 함수명(매개변수1, 매개변수2, ...) { // 함수 실행 코드 // 반환형에 따른 반환값 } 기본적인 함수의 형태는 위와 같다. 반드시 적어줘야 하는 것은 반환형과 함수명이다. C언어에서 함수는 기본적으로 모두 전역(global) 함수이다. 따라서 어디에서든 접근/호출이 가능하다. 물론 이걸 제한할 수 있는 키워드가 있긴 하다. C언어에서 사람들이 실수하는 부분 중 하나는 함수 오버로딩이 없다는 것이다. 보통 C/C++을 같이 사용하기 때문에 신경을 쓰지 않는다. void print(int score) { printf("Score : %d\n", score); } void print(float gpa) /* 컴파일 오류 */ { printf("..
[기본 미션] - 혼공 용어 노트에 용어 추가 등 노트 활용하고 공유하기 이번 주 미션은 혼공 노트를 활용하는 것이지만, 내 경우에는 반대로 사용하고 있다. 기존에 사용하고 있었던 용어 정리 노트에다가 혼공 노트에 적힌 것을 옮겨적었다. 처음에는 이동 시간에 틈틈이 보려고 했으나 양이 늘어나면서 블로그 등에 올리는게 더 효율적인 것 같다. [선택 미션] - p.123 크리스마스 소개팅 예문 if 문 손코딩 인증샷 또는 실행 화면 캡쳐하기 크리스마스 때 까지 솔로면.... 너무하네 혼공...어휴 그 문구를 손코딩으로 하기 싫어서 그냥 실행화면을 올려버렸다. 프로그래밍의 가장 기본은 조건문과 반복문이다. 사실상 이 2개면 모든걸 다 할 수 있다고 봐도 될 정도라고 생각한다. 이번주차 미션은 가볍게 쉬어가는 ..
[기본 미션] - 챕터 3,4 확인 문제 풀고, 풀이 과정 설명하기 3-1-1. long은 실수형이 아니라 정수형임을 생각해야한다. 문제에서 실수형은 float과 double 뿐이다. 3-1-2. 프로그램이 진행됨에 따라 변수 a의 값이 계속 바뀌고 있다는 점을 생각해야한다. total 총점 변수를 선언할 때, 바로 a + b + c 의 값을 더한 후 선언해도 되지만, 문제 주석에서 선언과 저장을 별도로 분리시켜놨기 때문에 역시 코딩에서도 분리시켜두었다. 3-2-1. ch는 char형 변수이므로 %c 변환 문자를 사용해야 한다. sh는 short형 변수이므로 %hd 변환 문자를 사용해야 한다. double형 변수에 입력할 때는 %lf 변환 문자를 사용해야 한다. 3-2-2. char 배열에 문자열을 입력..
최근 일을 하면서 기초의 중요성을 다시 깨닫고 처음부터 다시 공부하기로 결정하였다. 이런 와중에 혼공단 7기 모집 글을 보고 C언어 부문을 바로 신청하였다. 사실 대부분의 내용은 아는 상태이지만 기초를 복습하는 것에 의의를 두고 있다. [기본 미션] - 비주얼 스튜디오 설치 화면 인증샷 교재에서는 VS2019 버전으로 진행되었지만, 나는 가장 최신 버전인 VS2022 버전으로 진행하였다. 기초적인 내용만 다루고 있기 때문에 버전에 영향은 없기 때문이다. 여기에 OpenGL + GLFW 기본 셋팅을 코딩하여 제대로 동작하는지 확인해보았다. 역시나 OpenGL도 제대로 컴파일 되며 삼각형 화면이 나오는 것을 확인할 수 있었다. 교재 19페이지를 보면 VS 프로젝트 전처리기 정의 칸에 '_CRT_SECURE_..