묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨독하게 시작하는 C 프로그래밍
파일에 대한 질문입니다.
안녕하세요 좋은 강의 잘 보고 있습니다!파일에 대해서 질문이 있어서 합니다.현재 저의 수준에서 User mode에서 파일이라 함은 장치를 추상화한 파일과 데이터 파일 두개가 존재한다고 보면 될까요?장치를 추상화한 파일을 콘솔로 예를 들어서 설명해 주셔서 직관적으로는 이해는 간 것 같습니다. 그렇다면 데이터 파일의 경우 우리가 모니터로 보는 데이터 파일 또한 추상화한 데이터라고 생각하여 모니터로 표현된 파일에 DATA를 쓴다면 사실은 내부적으로 추상화된 파일에서 파일 시스템에 접근 후에 필터와 드라이버를 거쳐서 HDD나 SDD에 접근하여 실제 물리적인 부분?을 고친 것이다. 라고 이해하면 될까요?
-
해결됨독하게 시작하는 C 프로그래밍
'16진수 표기가 사용되는 예' 수업에 대한 질문입니다.
강사님!ㅠ"64비트 시스템은 1바이트 메모리에 64비트 주소를 부여해 관리 한다" 이 말씀이 계속 이해가 안되서요ㅜ8비트 메모리에 64비트 주소를 '부여'한다는게 물리적으로 어떻게 가능한지 설명해주실 수 있을까요?
-
해결됨독하게 시작하는 C 프로그래밍
강의가 재생이 안돼요
노트북으로 강의를 듣는데 강의가 검정색 화면에 아무것도 안뜨고 강의가 재생이 안되는데 어떻게 들을 수 있나요?
-
해결됨독하게 시작하는 C 프로그래밍
Ascii코드
아스키코드가 7비트로 이루어져있고 1바이트 단위로 통신할 때 나머지 1비트는 패리티 코드로 쓰게 되어 있는걸로 아는데 이 1비트를 패리티 코드 대신 각 컴퓨터 회사마다 마음대로 쓸 수 있게 해준건가요?
-
해결됨독하게 시작하는 C 프로그래밍
Native code
넓고 얕게 외워서 컴공 전공자 되기 25강독하게 시작하는 C프로그래밍 11강 에 Native 코드라는 설명을 해주시는데 25강 내용에서는 high level 언어 예시를 C언어라고 말씀하시면서 이러한 C언어를 OS와 CPU에 의존성을 가진 native code라고 설명을 해주셨습니다. 그래서 native code가 high level 언어에 속하는 줄 알았는데 11강 내용에서는 CPU에 의존성을 지닌 코드를 Native code라고 설명하시면서 c언어는 우리가 알아먹을 수 있는 언어로 되어있지만 Native code는 2진수로 표현이 되어있다고 하시고 Native code를 저급어에 속한다고 설명을 해주시더군요 어느 강의가 맞는 설명인가요?
-
해결됨독하게 시작하는 C 프로그래밍
scanf_s 관련 질문 있습니다.
강의를 통해 많은 도움 얻고 있습니다. 감사합니다.문의드릴 내용은, 섹션 10번 필수실습 문제(평균값, 시분초)에서 scanf_s 사용시 %d 뒤에 *c를 써야 하는 거 아닌지요?*c를 안 쓰면, 뒤의 행들이 실행되지 않고 중간에 중단되어야 하는 거 아닌지 문의드립니다. 답변 미리 감사드립니다.
-
해결됨이해하면 인생이 바뀌는 네트워크 프로그래밍
Basic_dump 수행 오류
안녕하세요 항상 좋은 강의 감사드립니다. 상기에서 5번/6번을 누르면 데이터가 트래킹이되는데 다른 번호는 트레킹이 안됩니다. (7번/8번 포함) VMware가 트레킹이되면 정상적으로 빌드된거같은데 혹시 사유추정이 가능할지 문의드립니다.
-
해결됨독하게 시작하는 C 프로그래밍
char szBuffer[32]={0}; 질문 입니다
동영상 섹션 10 번형식 문자 기반 문자열 입력 3:05초에 주소가 32개 라고 하셨는데32개가 32Bit인가요?
-
해결됨독하게 시작하는 C 프로그래밍
mystrcat 함수 질문있습니다!
mystrcat 함수 마지막 부분에서 *++pszDst = '\0';return --pszDst;이렇게 나와있는데 *pszDst = '\0';return pszDst;이렇게 해도 문제가 없나요? 문제가 있다면 설명해주시면 감사하겠습니다!
-
해결됨이해하면 인생이 바뀌는 네트워크 프로그래밍
이더넷 질문 드립니다.
Ethernet 헤더 분석 및 LSO 이슈 강의에서 고급 네트워크 설정을 따라하려고하는데 이더넷이 없어요 .. 혹시 VMware에서 하신걸까요 .. 아니면 BIOS에서 제가 잘못한걸까요.. 답변 부탁드릴게요 !
-
해결됨독하게 시작하는 C 프로그래밍
Null 역참조??
이게 무슨 오류인지 모르겠어요! 강사님은 안뜨셨는데 저는 뜨네요..
-
해결됨이해하면 인생이 바뀌는 네트워크 프로그래밍
윈도우10으로 해도 되나요??
집 os가 윈도우 10이여서요..
-
해결됨독하게 시작하는 C 프로그래밍
visual studio 2022 디버그 메모리창 질문
수업관련 내용이 아니라 죄송합니다만.. 디버그에서 메모리를 보려하면 이렇게 ?? ?? ?? ?? 만 나와서 메모리를 뜯어볼 수 없어서 너무 답답합니다.혹시 이를 해결할 방법을 아시는지 해서 질문 남겨봅니다..수업 잘 듣고 있습니다. 감사합니다..위는 제 코드인데변수 xds의 주소로 접근하면 아래처럼 나옵니다다른 상황에서도 이래서 변수로 접근하는 것이 어렵습니다..
-
해결됨독하게 시작하는 C 프로그래밍
콘솔(Console)에 대하여 질문
안녕하세요 강의 정말 잘 보고 있습니다!Console과 관련하여 질문이 생겨 올립니다! 제가 나름대로 정의한 Console의 정의는 아래와 같습니다 과거에는 Console이라는 하드웨어가 존재하였다하지만 오늘날 말하는 Console은 물리적인 Console을 의미하는것보다는 모니터, 키보드, 마우스와 같이 시스템과 상호작용하는 입출력 환경 전체를 의미한다혹은 CLI를 통해 OS와 직접 상호작용 할 수 있는 Console(Terminal) Application을 의미하기도 한다( Application 단에 구현 ) 질문 ( 그림 참고 )"Console을 추상화한 것이 stdin, stdout다" 의 의미는 Console환경, 즉 모니터와 키보드를 추상화한것이 모니터는 stdout, 키보드는 stdin 파일이라고 이해해도 되는걸까요?해당 내용을 그림으로 정리해 보았습니다
-
해결됨Windows 시스템 프로그래밍 - 기본
강사님 dll 지연로딩 관련하여 질문 드립니다
강의 내용을 기반으로 제프리 리처 <Windows via C/C++> 을 읽으며 생긴 질문이 있어서 여쭤봅니다.5판 번역본 기준 730p 입니다. /DelayLoad:MyDll.dll <- 지연로딩할 dll을 사용하면 링커에게 "실행 모듈의 임포트 섹션으로부터 MyDll.dll 파일을 제거하여 프로세스를 초기화할 때 해당 DLL 을 암시적으로 로드하지 못하도록 한다. 라고 되어 있습니다. (730페이지 상단) 이후에 지연로드 된 함수가 호출되었을 때 해당 함수를 익스포트하고 있는 DLL 이 존재하지 않으면 __delayLoadHelper2() 는 exception 을 던진다고 나와있습니다. (730페이지 3번째 문단) 궁금한 점은 "임포트 섹션에서 MyDll.dll 제거할 때 해당하는 dll 이 없으면 링크타임이나 로드할 때 에러를 발생시키면 되는데 왜 굳이 런타임에 exception 을 던지는지?" 궁금합니다. 항상 유익한 강의 감사합니다 😄
-
해결됨독하게 시작하는 C 프로그래밍
파일 입/출력 시 관여하는 컴퓨터 요소들 질문
안녕하세요 널널강사님! 우선 좋은 강의에 감사인사드립니다. 파일 입/출력 관련해서 질문이 있는데요! 파일 입/출력이 수행되는 과정에서 이 '과정'에 조금이라도 관여하는 컴퓨터 요소들(CPU, RAM, Kernel, ...)이 무엇인지가 궁금한데요.예를 들어, 아래와 같은 예졔 소스코드를 제가 디버그 모드로 실행해보았는데요.(참고로 MacOS에서 clang 컴파일러를 사용)#include <stdio.h> int main(void) { FILE* fp = NULL; fp = fopen("../TEST.txt", "w"); if (fp == NULL) { puts("Error: Failed to open file"); return -1; } fprintf(fp, "Hello"); fclose(fp); return 0; }어쨌건 위 소스코드가 하는 일은 "TEST.txt" 라는 파일을 생성하고 개방한 뒤, 해당 파일에 "Hello" 라는 문자열을 쓰는 로직이잖아요? 하지만 소스코드 레벨에서는 어쨌건 fp 라는 구조체 포인터를 할당하고 하는 과정에서 메모리(엄밀히 말하면 가상 메모리)를 사용하게 되고 있구요! 그러면 위 함수같이 순수하게 I/O 동작만 수행할 경우는 CPU는 전혀 관여하지 않고 유휴 상태라고 보면 되나요? 흔히, I/O Bound 작업에서는 CPU가 관여하는 부분이 없기 때문에 비동기로 처리한다고들 하는데.. 이 말은 I/O 작업에서는 CPU가 하나도 사용되지 않고 메모리와 파일 시스템과 상호작용하는 Kernel 정도만 사용한다고 보면 될까요? 약간 질문이 난해할 수 있을 것 같은데.. 답변 주시면 추가로 궁금한 점은 재질문 드리겠습니다!
-
해결됨독하게 시작하는 C 프로그래밍
동적 배열을 만들 때 realloc을 사용하나요 보통?
원래는 malloc하고 memcpy를 모를때는 반복문으로 복사하고, 이후 free하고 다시 새로 malloc한 주소값을 대입하였습니다.이번 강의에서 realloc을 배우고 이렇게 바꿀 수 있었습니다.그러면 실제로 동적 배열 만들때는 주로 realloc을 사용할 것 같은데, 강사님께서 realloc을 쓸일이 거의 없다고 하셨습니다. 설명해주신 미리 할당을 받아두고 memory pooling을 구현하기 때문인가요?아니면 대부분 동적이 아닌 예상할 수 있는 수치의 고정된 크기로 잡을 수 있기 때문에 realloc할 일 조차 없기 때문인가요? 그도 아니면 c에도 동적 배열을 사용하기 위한 라이브러리가 있어서 인가요? 항상 양질의 강의 제공에 감사드립니다.
-
해결됨독하게 C를 배운 사람을 위한 선형 자료구조
Event Loop
Event Loop 함수에서 함수포인터 배열를 사용하여 Lookup 테이블 구조로 변경 하는 도중에 에러가 발생하여 질문 남깁니다! void (*EventFunc[EVENT_COUNT])(void) = { 0, AddNewUser, SearchByName, SearchByAge,PrintList, SearchByNameToRemove };위 코드와 같이 EVENT_COUNT 를 #define EVENT_COUNT 6 매크로로 정의 했을때 오류가 발생 합니다.void (*EventFunc[6])(void) = { 0, AddNewUser, SearchByName, SearchByAge,PrintList, SearchByNameToRemove };EVENT_COUNT를 매크로로 정의 하지 않고 6으로 하드코딩 할때는 컴파일이 잘되는데 서로 다른 결과가 나오는 이유가 궁금합니다.
-
해결됨독하게 시작하는 C 프로그래밍
%d와 %d 사이에 공백이 없다는 점에 주의
문자, 정수 입력 개행문자 제거 부분입니다.scanf_s("%d %d", &x, &y);scanf_s("%d%d", &x, &y);음 이게 공백이 있든 없든 둘다 똑같이 동작하는데 무슨 의미가 있는거죠??
-
해결됨독하게 시작하는 C 프로그래밍
24년 8월 기준 비주얼 스튜디오 2019 버전 다운로드 방법
C#,C++ 관련 코드를 공부하기 위해서 비주얼 스튜디오 2019 버전을 다운로드 하려고 하는데다운르도 홈페이지 들어가니깐 community 버전 다운로드 버튼이 활성화가 되어있지 않던데혹시 다른 방법 아시는 분들 있는지 싶어서 글 작성해 봅니다 !!! 부탁드리겠습니다 ㅠㅠ