묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결독하게 시작하는 C 프로그래밍
본 강의에 대한 질문들입니다.
우선 좋은 강의를 제공해주시는 널널한 개발자님에게 감사를 드립니다. 일단 첫번째 질문은 2분 30초 쯤에 말하신 1바이트의 공간을 관리한다 즉 번호표를 매긴다라는 의미에 대한 질문입니다. 제가 아는 배경지식으로 이해한 방법은 주소가 0x0000000000000000부터0xFFFFFFFFFFFFFFFF까지 범위가 있는데 이를 운영체제가1바이트인 공간에 이걸 찾기 위해서1바이트인 공간을 (ex 0x00000ab2332f0001라는 주소를 붙여준다(은행 번호표처럼 사람에게 식별하기위해 번호표를 준다?)라고 이해하는게 맞나요? 2번째 질문은 직접 지정에 대한 내용입니다. 8분쯤 상황을 이해한걸 제가 설명해보겠습니다.직접지정은 제가 지역변수에 int ndata를 선언했다고 가정하면 OS가 ndata의 주소를 할당해주는데그 때 ndata에 지정된 주소를 직접지정된 주소라고 하는건가요? 아님 OS가 할당후에 할당한 주소로 찾아가 우리가 그 주소를 상수로 고정 시키겠다라고 하는게 직접할당인가요? 강사님이 말하시는게 2가지 의미로 해석이 되서 약간 헷갈립니다. 3번째 질문인 간접지정에 대한 내용입니다. 위에 가정을 끌고와서 int ndata라는 변수를 선언한 주소를 저장하기 위해 int *p = &ndata라고 선언을 하면 변수 p라는 공간이 생겨 나고 그 변수 p의 공간에 ndata의 주소를 담아 저장한다. 그런데 p는 ndata가 아니라 다른 사용자가 선언할 데이터의 주소를 담을 수 있기에 변수이고 이를 간접지정이라고 한다 맞나요?
-
해결됨독하게 시작하는 C 프로그래밍
입력값 보정
#include <stdio.h> // 영상에서 나온 해설int main(void){int Input = 0; scanf_s("%d", &Input);if (Input < 1 || Input > 9){printf("1~9사이 정수를 입력하세요.");return 0;}int i = 0;while (i < Input){printf("*\t");++i;}putchar('\n');}문제에서는 입력값을 보정하라는 문구가 있는데 위에서 작성해주신 대로 실행하고 범위에 벗어난 값을 넣었을 때 입력값이 범위에 벗어나면 유효한 값으로 바꿔서 처리하는 보정이 아닌 프로그램이 종료되는 현상이 나타나는데 이 부분에 대해서 궁금증이 남아 글 작성합니다!
-
해결됨독하게 시작하는 C 프로그래밍
교차출력에서요
#include <stdio.h> int main(void) { int list[5][5] = {0}; int count = 0; for (int i=0; i<5; ++i) { if(i % 2 == 0) { // 짝수 행: 왼→오 for (int j=0; j<5; ++j) { list[i][j] = ++count; } } else { // 홀수 행: 오→왼 for (int j=4; j>=0; --j) { list[i][j] = ++count; } } } // 출력 for(int i=0;i<5;i++){ for(int j=0;j<5;j++){ printf("%d\t", list[i][j]); } printf("\n"); } return 0;} 저는 4 - j가 생각 안나서 반복문 하나를 더써서 처리를 했는데.. 비효율적이겠죠? 반복문은 최대한 적게 쓰는게 더 나은가요?
-
해결됨독하게 시작하는 C 프로그래밍
전반적인 강의 분위기
네트워크 핵심이론 듣고 만족도가 높아 "전문 네트워크 솔루션 개발자 되기" 코스로 입문하게 되었습니다.전체적인 강의 분위기가 위 강의같이 화면 보면서 같이 이해하는 방식일까요?아니면 반드시 IDE를 옆에 두고 따라하면서 진행해야하는 강의인지 문의드립니다.
-
해결됨독하게 시작하는 C 프로그래밍
visual studio SDL 검사 설정 방법
안녕하세요, 강의 정말 잘 듣고 있습니다!SDL 설정을 따라해 보려고 하는데, 쉽지 않아서 이렇게 질문을 남깁니다. 알려주신 단축키(alt + F7)도 안되고, 나름 검색해본 방법들도 제가 사용하는 visual studio 에서는 적용이 되지 않는 것 같습니다. 도움을 구합니다. 감사합니다. <SDL 설정 창> -> 이걸 하고 싶어요...<사용 중인 visual studio> tool -> property -> 설정하기project -> property -> 설정하기현재 프로젝트에 우클릭 -> property -> 설정하기위의 3가지를 시도해보았지만 실패했습니다...
-
해결됨독하게 시작하는 C 프로그래밍
직접지정과 간접지정을 잘 모르겠습니다.
메모리 공간 지정에 대한 개념 인건지 해당 메모리(대상)에 접근하는 방식에 대한 개념 인건지가 햇갈립니다. 직접지정에 대한 설명을 들으면 데이터에 메모리주소를 부여하는 방식인데 주소상수를 통해 직접적으로 "너 여기 공간 써"하고 메모리 주소를 부여하는 느낌인것같기도하고, 간접지정설명을 들으면 어떤 메모리에 접근하고자하는 데이터가 저장된 메모리주소를 저장시켜 해당 데이터에 접근하는 느낌인것 같기도 합니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
쇼트 서킷 룰과 연산자 우선 순위
연산자 우선순위 강의 08:30 부근에서 쇼트 서킷 룰과 연산자 우선 순위에 대해 설명해 주셨는데,숏 서킷은 어디까지나 확정된 우선순위가 만든 수식 구조 안에서 평가를 멈추는 기능일 뿐연산자 우선순위를 생략하면 안 되는 걸로 알고 있습니다.
-
해결됨독하게 시작하는 C 프로그래밍
최대값구하기에서
풀이에서max = (max > input) ? max : input 를 저는 (input > max) ? max = input : max;이렇게했는데 컴파일하니깐경고가 떠서 구글링 해보니깐 연산식을 제어문처럼 쓰고 있다고합니다.(제가 c언어 말고 다른 쪽에서 제어문을 써 본적이 있어서 언어는 잘 모르지만 제어문을 알고 있습니다.) 제가 작성한 연산식은 잘못된 방식인가요?그리고 max를 갱신하는 용도면은 if문이 더 낫나요?
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
25년도2회차 기출 해설은 언제 볼수있을까요??
25년도 기출해설은 언제볼수 있을까요??
-
미해결홍정모의 따라하며 배우는 C언어
이런 방식으로 작성해도 되나요?
버퍼에 '\n'이 남아 메뉴가 두번씩 뜨는 문제를 scanf(" %c", &input); 과 같이 형식지정자 앞에 공백을 주어 해결했습니다.while (getchar() == '\n')를 사용했을 때,다음과 같이 메뉴가 출력되지 않는데, 이유를 모르겠습니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
섹션2 10,11,12 수업자료
섹션2 10,11,12강의 수업자료는 따로 없나요?
-
해결됨독하게 C를 배운 사람을 위한 선형 자료구조
첫번째 루프에서 최소값을 못찾았는데 계속 진행하는 이유가 무엇인가요?
이미 정렬이 된 노드에서 범위기반 탐색을 하는데 min보다 같거나 큰값을 못찾았다는건리스트 내의 모든 값이 min보다 작다는것 아닌가요? 그렇다면 왜 바로 종료시키지 않고 헤드 다음을 기준으로 MAX 까지 다시 탐색하는지 이해가 가지 않습니다.
-
미해결홍정모의 따라하며 배우는 C언어
강의 9.11의 12분 20초 경에 my_print_functions.h를 include 하는 이유?
안녕하세요.강의 9.11의 12분 20초 경에 my_print_functions.c 에 my_print_functions.h를 include 하는 이유가 무엇인지 궁금합니다.my_print_functions.c에는 함수들의 바디가 정의되어 있으니까 선언(.h)을 할 필요 없는 것 아닌가요?제가 #include "my_print_functions.h"를 빼고 빌드를 해보아도 아무 경고 메시지 없이 잘 됩니다. 감사합니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
포인터를 입력값으로 받는 변수(22:43)
myString 을 포인터변수(str)에 넣었을때,*str 은 주소값을 가리킨다고 하셨습니다.printf에서 str출력 시,주소값이 출력되어야 하는 게 아닌가요?printf("~", *str) 로 써야 문자열이 출력되는게 아닌지 헷깔립니다
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
배속 시, 끔찍한 버퍼링
이상하게 본 강의는 배속 시, 버퍼링이 심하게 발생해서 시청하기 너무 힘드네요...개선 부탁드리겠습니다..!
-
미해결고급 C언어
fputs에서 fwrite 로 변경 후 버퍼타입이 헷갈리는데요
동영상에서 34분 전후를 보면fputs는 line 버퍼 사용하고 있고fwrite 로 변경후 fully 버퍼를 사용한다고 나오는데fwrite 를 써도 출력 대상이 stdout 이니까버퍼 종류는 똑같이 line 버퍼가 아닌가요?
-
해결됨독하게 시작하는 C 프로그래밍
본 강의 이후 C프로그래밍 학습 방향성
안녕하세요, 우선 질 높은 강의 너무나 감사드립니다.다름아닌, 해당 강의를 통해서 배운 내용을 바탕으로 연습문제들을 풀며 실력을 더욱 키우고자 하는데, 추후 어떤 경로로 연습을 이어나가야할지 감이 잡히지 않아 질문을 남깁니다.개인적으로 전문 개발자가 아닌 전기 및 제어 분야 학생으로써, 임베디드 시스템 등 하드웨어와 접목시키는 방향성을 가지고 C언어를 사용할 예정입니다.이러한 상황에서 어떻게 추후 학습을 어떻게 이어나가는 것이 좋을까요?감사합니다.
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
재귀함수 답관련 질문
51:20Hello,World!뮨자열 마지막에서 재귀함수는 0을 리턴하는데답이 12아닌가요
-
해결됨독하게 시작하는 C 프로그래밍
컴퓨터 구조에 대한 질문입니다.
1.첫 질문은 제가 컴퓨터 구조를 따로 공부하고 싶은데 어떤 책을 참고해야할 지 모르겠습니다. 2번쨰 질문은 일단 모르겠어서 ,csapp 또는 structured computer organization 을 찾아가면서 공부 중인데 진도가 조금 안 나가고 생각보다 많이 막히는게 있어 맞는 방향인가 고민이 됩니다.이 강의 관련해서 혼자 공부하면서 배웠던건1.키보드의 입력값을 주면 전기신호가 컨트롤러에게 전달되고2.컨트롤러가 신호를받아 데이터를 값으로 변환하고3.그 값을 cpu로 보내서 인터럽트 요청을 하고4.I/o bus를 통해 cpu가 데이터를 읽는다.이게 레지스터로 가 저장이 된다는 것 까지 압니다.더 깊게 알고 싶은데 어디서 어떤 순서로 배워야하는지 잘 모르겠습니다. 또한 컴퓨터 구조론을 공부하는데 또 궁금한게 어디까지 작동원리를 이해 하느냐에 또 발목이 잡힙니다. 예시를 들자면 어떤 책은 CPU에 PC에 집중적으로 설명하는데 반에 어떤 책은 ALU와 레지스터의 연산방법 등 이러한 체계가 연결이 안된다는 느낌이 들어 어 여기서는 이랬는데.. 왜 저기서는 이렇지? 이런 느낌이 크게 들어 막히는 감이 존재합니다.
-
미해결C 프로그래밍 - 입문부터 게임 개발까지
안녕하세요 7장 포인터에 관해 질문드립니다.
7-2강의나 7-3강의 에서printf("철수네 주소 : %d",&철수); 와같은 구문이 실행이 안되는데 어떻게 된걸까요?이게 옛날 강의다 보니 현재 비쥬얼 스튜디오 2022에서는 이런식으로 작동하지 않는지 궁금합니다.