안녕하세요. @weekendcode 라는 유튜브 채널을 운영하고 있습니다.
비전공자, 프로그래밍에 관심 있는 학생들을 위해 최대한 쉽게 설명하고자 노력하는 강사입니다.
컴퓨터 공학으로 대학교를 졸업하고, 인간-컴퓨터 상호작용 관련 석사 학위를 받았습니다.
Java 언어로 안드로이드 개발자로서 일했고, Python 강사로 활동했습니다.
몇 번의 이직과 창업을 하는 과정에서 비전공자 분들께 지식을 공유할 기회가 생긴 이후,
본격적으로 지식공유자로 활동하고 있습니다.
모르는 것은 적극적으로 질문 부탁드립니다.
최선을 다해서 답변 드리겠습니다.
좋은 하루 보내세요.
Khóa học
Đánh giá khóa học
- (2025) Đỗ kỳ thi thực hành Kỹ sư xử lý thông tin trong một tuần
- (2025) Đỗ kỳ thi thực hành Kỹ sư xử lý thông tin trong một tuần
- (2025) Đỗ kỳ thi thực hành Kỹ sư xử lý thông tin trong một tuần
- (2025) Đỗ kỳ thi thực hành Kỹ sư xử lý thông tin trong một tuần
- (2025) Đỗ kỳ thi thực hành Kỹ sư xử lý thông tin trong một tuần
Bài viết
Hỏi & Đáp
영상 11분
안녕하세요. 메모리 공간이 약간 낭비될 뿐이지 정상적으로 코드는 동작합니다.
- 1
- 2
- 18
Hỏi & Đáp
수정 업로드 해주신 포인터 강의 자료 관련
안녕하세요, 당연히 수업 자료도 업로드 예정입니다.개인 사정으로 수업 자료 업로드가 근시일 내에 어려워서 다음 주 평일 내로 업로드 예정이오니 우선 영상으로 학습 부탁드립니다.
- 0
- 2
- 36
Hỏi & Đáp
전처리기의 마지막 예제 메인함수안에 printf안에 있는 "\"%S\"\n" 에서
가장 마지막의 문장은 출력문 자체에 큰 따옴표가 들어가야 합니다.우리가 printf문에 템플릿(%c, %s와 같은 단어)을 넣어서 전체를 큰 따옴표로 감싸는 것이 원래의 규격입니다. 문제는, 그 규격 안에서 진짜 큰 따옴표 자체를 표기하려면? 어떻게 해야할까요. printf 입장에서는 앞에서 시작한 큰 따옴표를 닫는 것인지 알 수가 없습니다.그래서 앞에 역슬래시\ 를 넣어서 "이 문자는 내가 진짜 큰 따옴표를 출력문 자체에 넣으려고 해" 라는 것을 알려줘야합니다. 그래서 출력문 안에 \"를 넣는 것이죠. 이런 것들을 이스케이프 문자라고 부릅니다.
- 0
- 2
- 20
Hỏi & Đáp
리턴값 관련질문
안녕하세요, 출력은 말 그대로 모니터에 값을 출력하는 것입니다.출력은 그 외에 설명할 것은 없습니다. "모니터에 값을 보여준다."의 의미입니다. 리턴값은 말 그대로 "값을 반환"하는 것인데,값을 반환하는 것 자체로는 모니터에 값을 출력하지 않습니다. 함수에 return이라는 키워드가 있는 경우, 본인(함수 그 자체)의 모든 괄호가 끝나면서 return에 해당하는 값을 본인이 호출된 곳으로 값을 전달합니다. 예를 들어 이렇습니다.#include // 출력만 하는 함수 void printSum(int a, int b) { printf("결과(출력): %d\n", a + b); // 화면에 결과 출력 } // 값을 반환하는 함수 int returnSum(int a, int b) { return a + b; // 결과값을 반환 } int main() { printSum(2, 3); // 콘솔에 '결과(출력): 5'가 찍힘 int result = returnSum(2, 3); printf("결과(리턴): %d\n", result); // 반환값을 받아 직접 출력 return 0; }코드의 출력값:결과(출력): 5결과(리턴): 5 위의 코드를 설명하자면 이렇습니다.printSum(2, 3); 실행 시: 함수 안에서 바로 결과를 출력할 뿐, 함수 바깥에서 해당 값을 활용할 수 없음.returnSum(2, 3); 실행 시: 해당 함수가 값을 반환(return) 하여 함수 외부에서 그 값을 변수에 저장하거나, 후처리, 출력 등에 활용 가능.정리하자면 printf는 단순 출력, return은 값 활용 및 함수 결과 반환에 사용한다는 점이 가장 큰 차이입니다. return을 하는 이유는 미리 만든 함수에다가 입력값을 던진 후에 연산이 끝난 리턴값을 돌려받아서 재활용하기 위함입니다. 이해가 어려운 경우 추가 질문 부탁드립니다!
- 0
- 2
- 52
Hỏi & Đáp
PDF 다운로드 어디서 할수있나요
안녕하세요, 기출문제의 경우 각 챕터에 학습자료가 있고 이론 PDF 파일은 이론 문제 학습하기 가장 첫 챕터에서 받으실 수 있습니다!
- 0
- 2
- 47
Hỏi & Đáp
쇼트 서킷 룰과 연산자 우선 순위
안녕하세요, 연산자 우선순위를 생략하면 안된다는 표현이 혹시 전부 계산한다는 말씀이실까요?"연산자 우선순위를 생략하면 안되는 걸로 알고 있습니다"라는 문장의 의미를 잘 이해 못하겠습니다. C언어의 단락 평가(short-circuit evaluation)는 실제로 뒤를 연산하지 않습니다.컴파일 했을 때의 어셈블리 코드에서도 조건을 평가한 다음에즉시 다음 결과값으로 점프하는 것으로 알고 있습니다. 컴파일된 코드까지 갈 필요가 없이, 아래 코드를 실행시켜 보시면 테스트가 가능합니다. #include // 부작용(side effect)이 있는 함수들로 테스트 int func_a() { printf("func_a() 호출됨\n"); return 0; // false } int func_b() { printf("func_b() 호출됨\n"); return 1; // true } int func_c() { printf("func_c() 호출됨\n"); return 1; // true } int main() { printf("=== AND (&&) 연산자 테스트 ===\n"); printf("테스트 1: func_a() && func_b()\n"); if (func_a() && func_b()) { printf("결과: true\n"); } else { printf("결과: false\n"); } printf("\n테스트 2: func_b() && func_c()\n"); if (func_b() && func_c()) { printf("결과: true\n"); } else { printf("결과: false\n"); } printf("\n=== OR (||) 연산자 테스트 ===\n"); printf("테스트 3: func_b() || func_c()\n"); if (func_b() || func_c()) { printf("결과: true\n"); } else { printf("결과: false\n"); } printf("\n테스트 4: func_a() || func_b()\n"); if (func_a() || func_b()) { printf("결과: true\n"); } else { printf("결과: false\n"); } printf("\n=== 비교: 비트 연산자 사용 ===\n"); printf("테스트 5: func_a() & func_b() (비트 AND)\n"); if (func_a() & func_b()) { printf("결과: true\n"); } else { printf("결과: false\n"); } printf("\n테스트 6: func_b() | func_c() (비트 OR)\n"); if (func_b() | func_c()) { printf("결과: true\n"); } else { printf("결과: false\n"); } return 0; } 실제 출력값=== AND (&&) 연산자 테스트 === 테스트 1: func_a() && func_b() func_a() 호출됨 결과: false 테스트 2: func_b() && func_c() func_b() 호출됨 func_c() 호출됨 결과: true === OR (||) 연산자 테스트 === 테스트 3: func_b() || func_c() func_b() 호출됨 결과: true 테스트 4: func_a() || func_b() func_a() 호출됨 func_b() 호출됨 결과: true === 비교: 비트 연산자 사용 === 테스트 5: func_a() & func_b() (비트 AND) func_a() 호출됨 func_b() 호출됨 결과: false 테스트 6: func_b() | func_c() (비트 OR) func_b() 호출됨 func_c() 호출됨 결과: true 다른 코드를 다 볼 필요없이1번과 3번만 보면 됩니다.&&인 경우에는 앞이 false이면 뒤를 연산하지 않고||인 경우에는 앞이 true면 뒤를 연산하지 않습니다. 제 코드의 예시인 a || b && c 의 경우에 &&가 연산자가 높아서 뒤를 계산하는 것을 말씀하시는 것이라면, 이 경우에도 a가 참인 경우 오른쪽은 평가하지 않습니다. 이런 연산 결과를 꼭 바로 알 필요는 없지만,시험에서 빠르게 문제를 풀어나가기 위해서는 알고 있는 것이 도움이 될 수도 있습니다.
- 0
- 2
- 34
Hỏi & Đáp
25년도2회차 기출 해설은 언제 볼수있을까요??
녹화는 다 했습니다! 편집 중에 있습니다.목표는 내일인데, 하루이틀정도 늦어질 수 있습니다...
- 0
- 2
- 54
Hỏi & Đáp
섹션2 10,11,12 수업자료
안녕하세요, 해당 부분이 비어있었네요.조만간 PDF 파일로 변환해서 추가해놓도록 하겠습니다!
- 0
- 2
- 30
Hỏi & Đáp
포인터를 입력값으로 받는 변수(22:43)
%s는 문자 시작 주소 그 자체를 받아서 '\0'를 만날 때까지 출력합니다.말씀하신 것은 %c로 한 개만 문자로 출력할 때이고, %s는 문자 전체 주소를 받야아 합니다.
- 0
- 2
- 27
Hỏi & Đáp
배속 시, 끔찍한 버퍼링
안녕하세요, 이전에는 괜찮았는데 갑자기 발생한 현상입니다. 해당 문제는 인프런 측 기술문제라서 메인으로 가셔서 인프런 공식 채널 톡으로 문의 부탁드립니다!
- 0
- 3
- 59