주말코딩
@weekendcode
수강생
4,975
수강평
587
강의 평점
4.8
안녕하세요. @weekendcode 라는 유튜브 채널을 운영하고 있습니다.
비전공자, 프로그래밍에 관심 있는 학생들을 위해 최대한 쉽게 설명하고자 노력하는 강사입니다.
컴퓨터 공학으로 대학교를 졸업하고, 인간-컴퓨터 상호작용 연구분야로 석사 학위를 받았습니다.
Java 언어로 안드로이드 개발자로서 일했고, Python 강사로 활동했습니다.
몇 번의 이직과 창업을 하는 과정에서 비전공자 분들께 지식을 공유할 기회가 생긴 이후,
본격적으로 지식공유자로 활동하고 있습니다.
모르는 것은 적극적으로 질문 부탁드립니다.
최선을 다해서 답변 드리겠습니다.
좋은 하루 보내세요.
강의
수강평
- (2026) 일주일만에 합격하는 정보처리기사 실기
- (2026) 일주일만에 합격하는 정보처리기사 실기
게시글
질문&답변
이중배열
안녕하세요, 특별한 이유 없습니다.실제 C언어에서 저렇게 문법이 가능해서 다양한 예제로 넣은 것입니다.저렇게 시험이 나올 수 있습니다. 포인터 배열로 전체 문장을 가리킬 수 있다는 것만 숙지하시면 됩니다!
- 0
- 2
- 37
질문&답변
hiding 질문
안녕하세요, 주말에 학습하시느라 고생이 많으십니다.부분적으로 맞기도 한데 어떤 것은 좀 애매하게 말씀하셔서 약간 수정해서 말씀드립니다.1번의 경우 말씀하시는 것이 맞습니다. 특별히 정정해드릴 부분이 없네요. 2번이 문제인데, 이 경우에는 정확히 말하자면 "선언된 타입"을 따라가는 것이 맞습니다.물론 우리는 항상 Parent로 선언하니까 표면적으로는 말씀하시는 것이 맞으나,혹시 문제에서 더 상위 체인인 클래스로 GrandParent가 나오면... 답 없죠. 선언된 타입을 따라가셔야 합니다.Parent p = new Child(); p.staticMethod(); // → Parent의 static 메서드 Child c = new Child(); c.staticMethod(); // → Child의 static 메서드 3번은 가까운 변수를 쓰는 것이 맞으나, 외부에서 변수가 오는 경우에는 this. 혹은 super.가 붙어있는지 잘 보셔야 합니다.명시적으로 부모의 변수나 현재 객체의 인스턴스 변수를 사용하기 때문에 그렇습니다. 단순히 변수의 필드 하이딩을 말씀하시는 것이면 맞습니다.Parent p = new Child(); // → Parent의 변수 Child c = new Child(); // → Child의 변수 변수는 넘어가지 않고, 그대로 하이딩합니다.
- 0
- 2
- 29
질문&답변
아스키코드 기출
안녕하세요,그렇게 하면 오류가 납니다. 정상적인 문법이 아닙니다.%s는 주소를 받아야합니다. *p하는 순간 주소가 아니라 값이 됩니다.거기에 +1을 했기 때문에 값입니다. 두번째 줄에 printf("%s\n", *p + 1);를 하면 L이 나옵니다. K에 해당하는 숫자에서 1을 더한 후 문자값으로 바꿨기 때문)
- 0
- 2
- 43
질문&답변
포인터
안녕하세요, 우선 b가 배열인지 아니면 원시 자료형인지에 따라 달라집니다.(배열의 이름은 그 자체로 주소를 표현하기 때문에 달라질 수 있습니다.) 단순히 2가지만 비교하자면 같은 표현은 아닙니다. *a = b이 코드는 a가 가리키는 위치에 b 값을 저장한다는 뜻입니다.int b = 10; int x; int *a = &x; *a = b; **a = &b이건 이중 포인터 상황입니다.int b = 10; int x; int *p = &x; int **a = &p; **a = b; 대략적으로 설명드리자면,*a = b a가 가리키는 곳에 b 저장**a = b a가 가리키는 포인터가 가리키는 곳에 b 저장*a = &b a가 가리키는 곳에 b의 주소 저장**a = &b 타입이 맞지 않아 보통 오류 이렇게 됩니다.
- 0
- 2
- 48
질문&답변
33:02 에 나온 문제 질문입니다.
맞습니다. 아래처럼 코드를 바꿔봤습니다. #include int main() { int a = 1, b = 1; int sum = 0; while (a 출력값:a: 6 b: 11-25
- 0
- 2
- 44
질문&답변
15:38
안녕하세요. 16:03에 말씀드린 것처럼 저거는 외부에서 숫자가 주어진 것이지 인스턴스 변수를 사용한 것이 아닙니다. 애초에 인스턴스 변수를 사용하려면 객체가 태어나야하는데 객체 자체를 생성한 적이 없습니다. 그저 클래스 메서드에 값을 준 것 뿐입니다. 말씀하신 대로 쓰려면 this.size가 되어야합니다. 이 size는:인스턴스 변수 this.size가 아님단순한 지역 변수 (parameter)
- 0
- 2
- 48
질문&답변
오랜만에 질문 남깁니다.
안녕하세요, 주석과 함께 출력값 알려드립니다.public class NullZeroComparison { public static void main(String[] args) { // 1. 기본형(primitive) int int a = 0; // 2. 참조형(wrapper) Integer Integer b = null; Integer c = 0; Integer d = null; // ── == 비교 ────────────────────────────── System.out.println(a == 0); // true (기본형 숫자 비교) System.out.println(c == 0); // true (Integer → int 언박싱 후 비교) System.out.println(b == null); // true (참조가 null인지 확인) System.out.println(d == null); // true System.out.println(b == c); // false (null ≠ 0 참조) // ── equals() 비교 ──────────────────────── System.out.println(c.equals(0)); // true System.out.println(c.equals(null)); // false (null은 어떤 값과도 같지 않음) // ── 💥 NullPointerException 위험 ───────── // b.equals(0); // NPE! null 객체에서 메서드 호출 불가 // int x = b; // NPE! null을 언박싱하면 터짐 // if (b == 0) // NPE! b가 null이면 언박싱 시도 → 터짐 } } 출력값:truetruetruetruefalsetruefalse
- 0
- 2
- 45
질문&답변
8:00
안녕하세요, 이론문제를 다운로드하고 학습해요 부분에서 영상 찍어놓은 것이 있습니다.그정도만 보고 가시면 됩니다. (사진)
- 0
- 1
- 44
질문&답변
printf문 문법
안녕하세요,printf("Float: %2.f\nDouble: %.5lf", fnum, dnum);이 부분 말씀이실까요? 쉼표가 있으면 안됩니다.쉼표가 있어도 정상 출력은 되는데요, 지금 출력문(노랑 글씨) 보시면Float: 3.14 다음에 쉼표가 없고 바로 개행(다음 줄로 넘어가는 것)이 된 것을 알 수 있습니다.그 다음 줄이 바로 Double로 바로 적혀있죠? 쉼표가 없기 때문에 쉼표가 없는 것이 맞습니다.
- 0
- 2
- 44
질문&답변
기출문제의 뜻이 뭔지 궁금합니다.
안녕하세요, 실제로 실기 문제로 나왔던 문제라는 것입니다!
- 0
- 2
- 49




