묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결문제로 배우는 C언어
커리큘럼 문의 드립니다
안녕하세요 코테 준비중인 학생입니다C언어 강의를 끝내고 C++ 과 자료구조 알고리즘을 공부 하려고 하는데 어떤 강의를 순서대로 학습 해야 할지 고민이라 순서를 알려주시면 좋을것 같아서 문의 드렸습니다
-
해결됨독하게 시작하는 C 프로그래밍
최대값 구하기 (함수)
선생님께서 사용자에게 입력 받는 함수 하나(UI) 최댓값을 구하는 함수 하나(기능) 해서 총 두 개의 함수로 이용해 봤습니다.제가 잘 이해하고 푼 건지 모르겠습니다.파일 주신 것을 보아도 이 실습에 관한 파일을 찾지 못해 질문 드립니다.
-
해결됨독하게 시작하는 C 프로그래밍
scanf_s와 gets_s()의 차이점
안녕하세요 선생님섹션9 형식 문자 기반 문자열 입력강의에서scanf_s와 get_s()의 차이점이 제가 이해하기론scanf_s는 함수를 작성하고 콘솔창이 생기고 값을 입력할때 값 입력 중간에 white space(스페이스바)를 입력하면 입력이 끊긴다.ex) 1. '안녕하세요' 는 입력이 되지만2. '안 녕하세요' 는 '안' 이라는 글자만 입력이 되고 끊긴다. 라고 이해를 했는데 맞을까요? get_s()는 이와 반대로 값 입력 중간에 white space(스페이스바)를 입력해도 입력이 유지된다. ex) 1. '안녕하세요' 는 입력 가능2. '안 녕하세요' 입력하면 '안 녕하세요' 라고 white space까지 입력이 된다.이게 맞을까요? 그리고 혹시 강사님께서 말씀해주신 것 이외에 scanf_s와 gets_s()의 차이점이 있을까요? 감사합니다.
-
해결됨독하게 되새기는 C 프로그래밍
마지막에 말씀하신 부분 질문드립니다.
매개변수가 레지스터보다 많아지면... 부분에서 혹시 자바도 C처럼 매개변수 처리에 레지스터를 쓰는지가 궁금한데 답변해주실 수 있다면 답변부탁드립니다!
-
해결됨독하게 시작하는 C 프로그래밍
F5 디버그 Crtl + F5 실행의 차이점
코드를 작성하고 F5로 디버그를 하게되면 최종 결과값을 보여주기전에 콘솔창이 닫힙니다crtl + F5(디버그하지 않고 시작)으로 하면 최종값까지 나온뒤 아무키를 눌러야 콘솔창이 닫힙니다 코드의 문제인가 싶어 검토하고 해설영상 보며 똑같이 타이핑을 해도 디버그를 하고 콘솔창이 뜨면 최종결과값이 뜨지않고 콘솔창이 닫힙니다 예로 뺄셈 연산 직접구하기에서 두 정수를 입력하는거까지는 잘 넘어가는데 뺄셈의 결과값이 출력되기전에 콘솔창이 닫혀버립니다 비쥬얼스튜디오의 설정이 무언가가 잘못되있는걸까요?
-
미해결홍정모의 따라하며 배우는 C언어
6.15초반 예제 scnaf 사용해서 만들면 어케 만들어야 될까요
저렇게 처음과 끝이 정해져 있는 게 아니라 scanf써서 사용자가 시작할 처음 단어와 몇 개까지 갈지, 몇 줄만들지 이런거요
-
해결됨홍정모의 따라하며 배우는 C언어
13분 03초, 39번째 줄 i =1이 왜
출력이 0으로 나오는건가요..? l은 2가 되는게 납득이 갑니다만 40번째 줄에서 i가 1이 감소하는 건가요??
-
해결됨독하게 시작하는 C 프로그래밍
변수이름 약자 질문드립니다.
char szBufferSrc[12] = {"TestString"};,char* pszSrc변수에서 sz와 psz가 의미하는 약어가 무엇인가요??문득 궁금증이들어 질문합니다 감사합니다.
-
해결됨독하게 시작하는 C 프로그래밍
피드백 부탁 드립니다 ~! (달팽이 배열)
냉정하게 평가해주시면 감사하겠습니다 (●'◡'●)자주 피드백 요청 드려도 될까요??
-
미해결홍정모의 따라하며 배우는 C언어
15분경 질문
scanf 함수가 i의 값을 바꾼다고 하셨는데 그러면 처음에 i=0으로 정의가 됐다가 scanf 함수를 통과하면서 i가 바뀐다는 뜻인가요? 만약 그렇다면 뭐로 바뀌는지는 어떻게 아는 건가요?
-
미해결홍정모의 따라하며 배우는 C언어
Scanf 함수가 이상한 값을 내놓습니다.
end 변수에 K를 입력하니 K의 아스키 코드인 75가 안 나오고 -52가 뜹니다 ㅠㅠ
-
해결됨독하게 시작하는 C 프로그래밍
세 정수 총합 계산하기에서 input 변수
input값을 total에 누산하는 단계마다 input 변수 값을 0으로 중간중간 초기화 안해줘도 괜찮을까요??
-
미해결홍정모의 따라하며 배우는 C언어
while(getchar() != '\n') continue;의 원리
while(getchar() != '\n') continue;가 입력 버퍼에 남아있는 개행문자들을 모두 읽어들이며 입력 버퍼를 클리어해주는 것이라고 알고 있는데 왜 그런지 원리를잘 모르겠어요getchar()에 들어가는 값이 줄바꿈 값이 아니면 다시 반복문으로 돌아가고, 줄바꿈이면 계속 한다는 뜻인 저while(getchar() != '\n') continue; 라는 코드가 어떻게 그런 기능을 하는 건가요?
-
미해결홍정모의 따라하며 배우는 C언어
내가 원하는 알파벳까지 출력하기
교수님께서 내신 문제 해설을 듣기 전 작성한 코드입니다. For 문 대신 while을 이용했는데요. 프롬포트 창에서는 컴파일러가 repeat 함수를 만난 이후부터는 진행되지 않습니다. 뭐가 문제인지 봐주실 수 있나요
-
해결됨독하게 시작하는 C 프로그래밍
Quick Sort 해봤습니다 (feat.너무 어렵습니다)
제 나름대로 머리 짜서 작성 했습니다 다만 약간 억지로 짜서 맞춘 느낌이 강합니다.숙제는 아니라고 하셨지만 숙제라는 생각으로 제출해봅니다.피드백 주시면 감사합니다😊😊
-
해결됨홍정모의 따라하며 배우는 C언어
15.12강 질문이 있습니다.
#include <stdio.h> #include <stdalign.h> int main(void) { printf("Alignment of char = %zu\n\n", alignof(char)); char ca; printf("&ca : %p %lld\n", &ca, ((long long)&ca) % 8); printf("&ca : %p %lld\n", &ca, ((long long)&ca) % 16); printf("\n"); char _Alignas(int) cb; printf("&cb : %p %lld\n", &cb, ((long long)&cb) % 8); printf("&cb : %p %lld\n", &cb, ((long long)&cb) % 16); printf("\n"); char alignas(8) cc; printf("&cc : %p %lld\n", &cc, ((long long)&cc) % 8); printf("&cc : %p %lld\n", &cc, ((long long)&cc) % 16); return 0; } [결과]alignas(n)를 지정하면 주소가 n의 배수인 메모리 위치에 객체를 할당하도록 하는 것은 이해했습니다. 첫 번째 줄의 출력에서 따로 정렬을 지정하지 않은 ca는 정렬 값이 1인 것은 확인했습니다.그러면 ca의 주소를 8, 16으로 나눈 나머지가 1이므로&ca : 00000097AA4FF614 1&ca : 00000097AA4FF614 1형태의 출력이 나와야 할 것 같은데왜 4바이트로 정렬을 지정한 cb와 결과가 같은 것인지 잘 모르겠습니다..
-
미해결독하게 시작하는 C 프로그래밍
강의 "16진수 표기가 사용되는 예" 에서의 질문
해당 강의에서 보여주시는 메모리 화면에서 메모리 주소 오른쪽에 있는 문자들은 앞에 0x가 따로 없는데도 16진수라고 하셨는데, 저 문자들은 그냥 16진수 읽기로 약속된 문자들 이라고 이해하면 될까요 ?? 그리고 그렇다면 왜 앞에 0x가 붙어있지 않은지도 알려주실 수 있나요 ??
-
해결됨독하게 시작하는 C 프로그래밍
입력 버퍼가 화면에 뜨고 있는 것을 말하나요?
제가 scanf("%s",stringarr)를 이용해서 콘솔 입력(키보드)에 데이터를 이용하면 1. 화면에 커서가 깜빡깜빡 거리면서 콘솔화면(모니터)창에 쓰는 값이 보이는데 이게 입력 버퍼인가요? (그리고 이러한 버퍼는 일반적으로 4kB까지 입력을 칠 수 있는 건가요?)아니면 입력 버퍼는 저희 눈에 안보이고 "CON"이라는 파일안에 들어가 있는 건가요? 이 부분이 혼동이 옵니다. 리눅스에 man puts 를 쳐서 설명을 보니 개행 문자가 딸려온다고 써져 있습니다. puts("")로 치면 출력버퍼안에 \n이 있다는 말인가요? 그렇다면 출력 버퍼는 \n으로 인해 비워지게 된건지 궁금합니다 질문과는 다른 이야기인데 4kB는 페이지 크기도 4kB인데 이게 무엇을 기준으로 나눈 건가요?? ps/ 수업을 너무 많이 듣고 정리하면서 이러한 개념들이 혼동이 생기네요... 마음은 급하고 배울건 많고, 배운건 또 안보면 까먹고 왕도가 없네요 하하.. 항상 열심히 수업듣고있습니다. 감사합니다.
-
해결됨독하게 시작하는 C 프로그래밍
scanf 사용 시, null이 먼저 들어가고 \n이 나중에 들어 가는건가요?
버퍼 공부하다가 궁금합니다.제가 이해한 바로는\n은 I/O 버퍼를 비우기 위해 사용하는 이스케이프 시퀀스 라고 이해했습니다.string에서char Id[7] = {1} 라고 초기화를 주고scanf("%s",Id); 이라고하고 코드를 작성합니다.작성한 코드를 프로그램에 컴파일 한 이후 런 타임때,"null" 을 입력하고 엔터를 치면Id의 0번 주소의 값은n1번 주소의 값은u2번 주소의 값은l3번 주소의 값은l이 됩니다.그렇게 하고 개행 문자인 엔터를 칩니다. 이때 여기서 궁금증이 생깁니다.버퍼안에 \0와 \n 어느 게 먼저 들어가는 건가요? \0 을 이용해서 문자열을 모두 읽었다고 표시를 한다고 이해했습니다.이렇게 하고 엔터를 치면개행 문자 \n이 들어가는데실제 메모리 상에서는null\01\n 으로 찍히는지 궁금합니다.
-
미해결[쥬신게임아카데미 버거쌤] 완전 초보자를 위한 게임 C++
클래스의 개념과 구조체와의 비교 < 강의에서여
public: void Initialize(int iAtt) { /* 같은 클래스 내부에 선언된 함수에서는 private 멤버여도 접근가능 */ //this->iAtt = iAtt; iAtt = iAtt; iDef = 7; iHp = 100; iMp = 100; }=============아래는 메인 함수에서 출력한 코드예여=================== CPlayer Player_class; // 클래스 접근 Player_class.Initialize(10); Player_class.Output(); CPlayer Special_Player; Special_Player.Initialize(100); Special_Player.Output(); 제가 직접 친 거라서 코드 내용은 조금 다른데욥 위 멤버 함수 Initialize 코드에서 this->, (*this)가 생략? 된 거라고 하셨자나요this->iAtt = iAtt; 이렇게 출력하면 정상 출력이 되는데 iAtt = iAtt; 이 코드로 출력 하면 Player_class랑 Special_Player 둘 다 -858993460 이런 값이 나오더라구요! 이유가?? 멀까요???!!!근데 멤버 함수에서 받는 파라미터? 인자 이름을 바꾸면 정상 출력이 되긴 해여