묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨홍정모의 따라하며 배우는 C언어
if(!parr) exit(1); 을 하는 이유에 대해 질문 드립니다.
안녕하세요. 13.5 강의를 듣고 실습 중에 궁금증이 생겨 질문 드립니다. FILE* fp = fopen("sample.txt", "rb"); int n = 100; int* parr = (int*)malloc(sizeof(int)*n); for (int i = 0; i < n; ++i) *(parr + i) = i * 2;위와 같이 if(!parr) exit(1); 부분을 빼놓고 코드를 작성하니 "NULL 포인터 parr+i 를 역참조 할 수 없다"고 MSVS에서 표기가 뜹니다.exit(1)은 프로그램을 종료 시키는 것으로 알고 있었는데 동적할당 메모리 parr이 처음 선언될 때 할당된 메모리의 첫 번째 주소를 리턴 받은게 아니라 NULL로 리턴을 받을 수 있는 가능성이 있어서 MSVS에서 미리 경고를 주는 것일까요?코드 실행 자체는 잘됩니다.
-
해결됨홍정모의 따라하며 배우는 C언어
print_binary_loop 함수를 구현해봤습니다.
#define CRTSECURE_NO_WARNINGS#include <stdio.h>/* 10 10 / 2 = 5, remainder = 0 5 / 2 = 2, reminder = 1 2 / 2 = 1, reminder = 0 1 / 2 = 0, reminder = 1*/void print_binary(unsigned long n);void print_binary_loop(unsigned long n);int main(){ unsigned long num = 10; print_binary_loop(num); printf("\n"); print_binary(num); printf("\n"); return 0;}void print_binary(unsigned long n){ if (n > 0) { print_binary(n / 2); printf("%d", n % 2); }}void print_binary_loop(unsigned long n){ int i = 0, remain, v; for (int ans = n; ans > 0; ans = ans / 2) { //printf("ans : %d\n", ans); i++; } for (int j = 0; j < i; j++) { v = n; for (int k = i; k > j; k--) { remain = v % 2; v = v / 2; } printf("%d", remain); }}
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
56강 bcm2835-mailbox.c 파일 질문
빌드를 해보던 도중printk("dev_id:0x%x \n", (unsigned int)action->dev_id); 해당 줄에서 언사인드 인트가 포인터 인트 형 문제라고 하는데printk("dev_id:%p\n", action->dev_id);이렇게 바꿔서 진행해도 될까요?아니면 워닝 무시하고 해보면 되나요?
-
해결됨(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
26년 실기
이 강의로 26년 실기 준비가능할까요?
-
해결됨홍정모의 따라하며 배우는 C언어
11.2 24분2초
여기서 헤드 포인터가 가리키는 데이터가 텍스트 세그먼트에 있기떄문에, 텍스트 세그먼트에 있는 데이터들은 프로그램이 만들어질떄 프로그램 파일에 포함이 되기 떄문에 수정이 불가능하다고 하셨는데,그 이전에 문자열은 읽기 전용 데이타 세그먼트에 저장된다고 하셨는데, 왜 24분2초쯤에선 읽기전용 데이터 세그먼트가 아닌 텍스트 세그먼트에 저장된다고 하시는지 이유가 궁금합니다.위 표의 프로그램 코드가 읽기 전용 데이터 세그먼트도 포함하는거라고 보면 될까요?
-
해결됨독하게 시작하는 C 프로그래밍
stdin, stdout
stdin과 stdout이 콘솔 장치 파일을 가리키는 포인터면 Windows에서는 CONIN CONOUT$을 가리키는 건가요?
-
해결됨독하게 C를 배운 사람을 위한 선형 자료구조
마지막 열의 노드를 삭제하였을때 읽기 엑세스 위반 발생 건
안녕하십니까 '더미 헤드를 갖는 리스트로 개선 및 검증' 학습하던 도중에, 마지막 노드인 'jang'을 삭제할 시에 읽기 엑세스 위반 오류가 뜨면서 정상적인 종료가 되지 않았습니다. 디버깅으로 살펴보니 pPrev->pNext도 마지막 노드이다 보니 NULL인 상태에서 pPrev->pNext 도 동일하게 NULL 인상태에서 발생한 문제인듯 합니다. 제생각에는 마지막 노드를 삭제할때는 pPrev->pNext NULL 경우에 대한 IF 절을 넣는게 맞아보이는데 맞는 조치일까요?
-
해결됨독하게 시작하는 C 프로그래밍
필수 실습 (최댓값을 반환하는 함수)
안녕하세요 선생님 코드는 잘 돌아가는데 혹시 부족한 사항이 있는지 궁금하여 글 올려봅니다강의 정말 잘 보고 있습니다 감사합니다
-
해결됨독하게 시작하는 C 프로그래밍
아......ㅠㅠ
필기하는 소리가 왜 이렇게 크게 녹음이 되어 있는건지... 이해가 안가네요. 선생님 목소리 듣는데 너무 방해가 되요 ㅠ 미치겠네요 ㅎㅎ 이미 녹음된거 바꿀수도 없고, 스피커 볼륨을 최소로 해놓고 들어보겠습니다
-
미해결C언어 슈팅게임 따라만들기
1강이 안나오네요?
1강 영상이 안나오네요?
-
미해결홍정모의 따라하며 배우는 C언어
1.13 gcc main.c 실행파일이 안만들어집니다
다른분들이 남겨주신 글을보고 저장한 후에도 해봤지만 이렇게만 나오고 실행파일은 만들어지지 않습니다 어떻게 해야할까요PS C:\hjm c files> gcc main.cmain.c:1:10: fatal error: studio.h: No such file or directory1 | #include <stdio.h>| ^~~~~~~~~~compilation terminated.
-
해결됨한국에서 제일 쉬운 리눅스 커널 강의
'drivers/soc/bcm/bcm2835-power.o 에러 입니다.
실수방지 드라이버 만들기-1 10:00에서'drivers/soc/bcm/bcm2835-power.o가 찾을수 없다고 나오는데 보니까 bcm2835-power.c, raspberrypi-power.c 파일은 저폴더에 없던데 어디서 나오는건가요?
-
해결됨독하게 시작하는 C 프로그래밍
버퍼 내 엔터
제 컴퓨터에선 스캔시 엔터를 누르면 메모리에서 0a라고 뜨지않고 그냥 00이라고 뜨는데 차이가 있는 건가요?
-
해결됨홍정모의 따라하며 배우는 C언어
char cookies[1] = {'A',} 가 이해가 안되서 질문드립니다.
안녕하세요.char cookies[1] = {'A',};위 코드에서 이해가 안되는 점입니다.문자 배열은 NULL 문자까지 포함해서 크기가 2여야 하는게 아닌지요?위 배열 처럼 크기가 1인 경우 &cookies 주소의 바로 다음 주소가 NULL이되는 건지? (NULL은 어디에?)이를 확인해 보기 위해 printf("%c\n", *(&cookies[0]+1));을 해보았으나 ?가 출력되더라고요다른 질문을 보니 , (콤마)의 경우 자동으로 NULL문자를 만들어 주기 위함으로 붙이는데 크기가 1인 배열에도 붙여 줘야 하는건지 궁금합니다.
-
해결됨(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
정보처리기사 실기 | 25년 3회 기출문제 코드부분 1편 관련
안녕하세요, 강사님.매번 빠르게 기출 분석 및 해설 강좌 업로드 해주심에 대단히 감사드립니다!!! 😄글 제목과 관련된 위의 영상에서 말씀해주셨습니다만, 아직 인프런 강의 목록에서는 확인을 하지 못하여서요...2편은 포함하여, 강의 업로드 계획을 문의드리고자 글 남깁니다.항상 고생 많으십니다 ㅜㅜ감사합니다.
-
해결됨홍정모의 따라하며 배우는 C언어
17분경 제가 이해한게 맞는지 확인 부탁드립니다.
17분 경에 나오는 다음 코드에 대해 제가 올바르게 이해 한 것인지 궁금해서 질문 드립니다.// 강의 17분 경 코드 const int** pp2; int* p1; const int n = 13; pp2 = &p1; *pp2 = &n; *p1 = 10;제가 이해한 부분들입니다.애초에 포인터 변수 p1이 const 포인터 변수가 아닌데 이중포인터 변수 pp2에 대입이 된 부분부터 일단 잘못 되었다.*pp2 = &n 은 *p1 = &n 과 동일하다.p1은 const 포인터 변수가 아닌데 const 변수 n의 주소가 대입되어 p1이 n의 값을 변경할 수 있게 되었다.질문입니다.포인터 변수에서 const가 데이터 타입 왼쪽에 있으면 indirection을 하지 못하게 방지 하는 역할로 알고 있는데*pp2 = &n이 어떻게 경고 없이 컴파일 된건지 궁금합니다.const 데이터 변수의 주소를 대입해서 그런걸까요?
-
해결됨(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
42:22
-1 에서 "" 을 반환하고 0번째로 올라가서 a를 반환하는것 까진 이해했습니다.근데왜 abcd가 아니라 거꾸로 축력이 되는거죠
-
해결됨(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
60강 빈칸채우기 11:31
이 문제에서 int 형태로 input에 101110이들어가면 10진수 10만1110으로 인식하지 않나요..? 설명이 조금더 있었으면 좋겠습니다 어떻게 이 프로그램이 2진수로 인식을 하나요?
-
해결됨(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
04:17 Parent: 5 출력된 후 x=25 유지인지 x=5로 변한건지 궁금 합니다~
04:17 Parent: 5 출력된 후 x=25 유지인지x=5로 변한건지 궁금 합니다~
-
해결됨(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
1:05:25 질문
['f','i','r','s','t','\0','r','i','n','g']을 for문으로 첫 번째 인덱스부터 끝까지 %c로 출력하면 first ring이라고 하셨는데, '\0' 널문자가 %c로 출력하면 공백이 되나요?출력 결과가 "first ring"이 되는지, "firstring"이 되는지 모르겠습니다.