월 19,800원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결홍정모의 따라하며 배우는 C언어
(2:49) 코드의 진행 방식이 머릿속에서 꼬여버려서 while문을 추가하였을 때, 정상적으로 출력되는 이유를 모르겠습니다.
디버그를 해보았는데도 이해가 되질 않아 질문을 올립니다.둘 다 실행했을 때, y입력 후 엔터를 쳤다고 가정하고제 나름대로 작동 순서를 글로 작성해보았습니다.1번째 코드 (while문, continue 없음)이것이 처음 작성한 코드입니다.ex) y 입력 후 엔터"Current count is 0. Continue? (y/n)" 출력 후 입력 대기→ y 입력 후 엔터if문에서 입력한 문자 'y'와 n을 비교한다. [검사]n이 아니므로 빠져나오지 않고 count++ 실행"Current count is 1. Continue? (y/n)" 출력 후 입력 대기→ (버퍼에 있던 \n)if문에서 입력한 문자 \n과 n을 검사하여 통과 [검사]count++실행"Current count is 2. Continue? (y/n)" 출력 후 입력 대기2번째 코드 (while문, continue 추가)이것이 두번째 작성한 코드입니다.ex) y 입력 후 엔터"Current count is 0. Continue? (y/n)" 출력 후 입력 대기→ y 입력 후 엔터if문에서 입력한 문자 'y'와 n을 비교한다. [검사]n이 아니므로 반복문(while(1))을 빠져나오지 않는다.while(2)문에서 y 검사(참) → continue 실행 [무시]while(2)문에서 \n 검사(거짓) → 빠져나옴count++ 실행"Current count is 1. Continue? (y/n)" 출력 후 입력 대기if문에서 입력한 문자 '\n'과 n을 비교한다. [검사]if문을 빠져나와 while문의 조건(거짓)을 만족시키지 못한다.count++ 실행"Current count is 1. Continue? (y/n)" 출력 후 입력 대기------------------------------1. 2번째 코드에서 while(2)문과 continue;의 조합으로 작성한 코드가 어째서 '첫번째 글자를 제외한 나머지를 버퍼에서 싹 지워주기 위함'인지 잘 모르겠습니다.결과적으로 while문-continue는 첫번째 글자 포함, 그 이후 글자까지 무시한 후 \n은 false이므로 아무 작용을 하지 못하는 것이 아닌가 싶습니다.→결국 2번째 반복(cycle)에서 버퍼에 남아있는 \n을 if문에서 판단하고, 결국 1번째 코드와 동일하게 작동하는 것이 아닌가요?
- 해결됨홍정모의 따라하며 배우는 C언어
5:30 콘솔창 실행 후 입력 시, 디버그 에러가 나타납니다.
#define CRTSECURE_NO_WARNINGS#include <stdio.h>#include <float.h>int main(){ float num = 0.0f; float max = -FLT_MAX; float min = +FLT_MAX; float ave = 0.0f; int n = 0; float sum = 0.0f; scanf("%lf", &num); while ((scanf("%lf", &num) == 1)) { max = (num > max) ? num : max; min = (num < min) ? num : min; /*if (num > max) max = num; if (num < min) min = num;*/ sum += num; n += 1; } printf("min = %f, max = %f, ave = %f\n", min, max, sum / num); return 0;}를 입력했고, 빌드 실행 시 에러가 발견되지 않았습니다. 하지만 콘솔창에 입력했을 때, 디버그 에러가 나타났습니다.그렇다면 문법 문제는 아니라는 것인데... 무엇이 문제인지, 모르겠습니다.
- 미해결홍정모의 따라하며 배우는 C언어
헤더의 순서와 scanf()의 입력값 받는 문제 질문!
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main() { int x = 0, y = 0; scanf("%d \n %d", &x, &y); return 0; } 안녕하세요!위의 코드에서 헤더의 순서를 바꿔서 기입하면 에러가 발생하는 이유는 무엇인가요?또한 scanf에서 한 줄 띄고 변수를 받아들일 때, 위와 같이 하지 않고아래와 같이 라고 하면scanf("%d \n", &x); scanf("%d \n", &y);제대로 입력이 받아들여 지지 않는 이유도 궁금합니다!ㅠㅜ
- 미해결홍정모의 따라하며 배우는 C언어
12분
printf("%+I %+I",123,-123)printf("%(빈칸) I % (빈칸)I",123,-123)여기서 빈칸을 띄워주면서 사용하면 플러스일때는 플러스이고 마이너스일때는 마이너스 를 표현해주신다고했는데 그러면 위에 I에다가 +를 붙힌거랑 다를게 없는거 아닌가요?
- 미해결홍정모의 따라하며 배우는 C언어
4.8 18분
printf("%d %lld %lld\n,INT_MAX+1,INT_MAX +1, 2147483648LL) 이라고 나오는데 왜 2147483648LL 뒤에 LL은 뭔가요??
- 미해결홍정모의 따라하며 배우는 C언어
scanf 밑줄이 계속 거슬려요!
#define _CRT_SECURE_NO_WARNINGS 를 달았는데도 scanf에 초록 밑줄이 그어지는 이유가 뭔가요?? 마우스를 갖다 대면 <반환 값이 무시되었습니다. 'scanf'> 라고 되어 있어요
- 미해결홍정모의 따라하며 배우는 C언어
강의 24분
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> void swap(int* u, int* v) { printf("%p %p\n", u, v); int temp = *u; *u = *v; *v = temp; } int main() { int a = 123; int b = 456; printf("%p %p\n", &a, &b); swap(&a, &b); printf("%d %d\n", a, b); char* word = "Googgle"; //word[2] = 'o'; // Run-time error! return 0; } 위 코드에서*u = *v; *v = temp; 이건되고char* word = "Googgle"; //word[2] = 'o'; // Run-time error!이건 안되는 이유가123 456은 int a, b가 지역변수라 stack에 있고 "Googgle"은 text segment에 있어서 그런가요? 그리고 123 456이 stack에 있는게 맞다면 123 456은 stack에만 있는건가요? 아님 stack과 text segment둘다에 있나요 ?
- 미해결홍정모의 따라하며 배우는 C언어
형식 지정자
int32_t를 출력할때 PRI32를 사용하는이유가 형식 지정자를 알수가 없다고했는데int32_t는 32비트를 사용하니까 4바이트이고 그러면 그냥 %d를 사용하면되는거 아닌가요?
- 미해결홍정모의 따라하며 배우는 C언어
3.11강 21분
0x1.1P1을 0xb.aP1로 바꿨는데 어떻게 1.1이 b.a가 되는건가요?여기서 b 와 a 는 16진수라고 하셨는데16진수는1,2,3,4,5,6,7,8,9,A,B,C,D,E,F 이렇게 표현하는걸로 알고있는데1.1 이 b.a가 어떻게 된건가요?
- 미해결홍정모의 따라하며 배우는 C언어
size_t
sizeof 함수가 size_t를 반환한다는 소리가 무슨 말인가요?
- 미해결홍정모의 따라하며 배우는 C언어
3.11강 21분
0x1.1P1을 0xb.aP1로 바꿨는데 어떻게 1.1이 b.a가 되는건가요?
- 미해결홍정모의 따라하며 배우는 C언어
int_least_t
이번 강의에서 배운 int_least8_t, int_fast_f 등등과 같은것들은 많이 사용되는 것들인가요?
- 미해결홍정모의 따라하며 배우는 C언어
21분
소수점 이하 자리를 계산하려면 won이나 dollar의 자료형도 float을 사용해야 한다고 하셨는데 won과 같은경우에는 굳이 float 을 사용해야하나요?? 그냥 int 사용해도 같은 값이 나오는데 왜그런가요?
- 미해결홍정모의 따라하며 배우는 C언어
4 바이트 정수 범위와 4 바이트 부동소수점수 범위가 왜 다른지 모르겠어요.
안녕하세요.4 바이트의 정수 범위가 -2.14x10^9 ~ 2.14x10^9인건 이해를 했습니다. 4바이트면 32비트니까 2^32을 음수까지 표현하면 위와 같이 표현되는 거잖아요? 그런데 부동소수점수 범위는 왜 10^38까지 표현이 되는거지 이해가 정확하게 되지 않습니다.혹시 강의에서 말씀해주신 Normalized significand의 범위를 10진수로 바꾸면 -3.4x10^38 ~ 3.4x10^38이 되는건가요?
- 미해결홍정모의 따라하며 배우는 C언어
단축키 관련 문의드립니다.
강의 중에 보면 단어를 삭제하실 때 마우스로 드래그 안하고커서가 해당 단어에 있을 때 어떤 단축키로 해당 단어를 지정해서 바로 삭제하시더라구요.마우스로 드래그 안하고 원하는 단어를 선택하려면 어떤 단축키를 사용해야 하나요?
- 미해결홍정모의 따라하며 배우는 C언어
Build와 Start without debugging의 차이가 뭔가요?
안녕하세요!강의 정말 잘 듣고 있습니다.아주 기초적인 질문인 것 같은데, 제가 이해를 못하고 있는 부분이 있습니다.수업에서 보여주신 빌드(Ctrl B)는 정확하게 어떤 기능인가요?보통 코딩을 하고 확인을 할 때 Ctrl f5(Start without debugging)을 눌러서 확인을 하는데요.저는 이거랑 빌드랑 비슷한 기능이라고 생각을 하고 있었는데, 지금 사용해보니까 다른 기능인 것 같아서요.답변해주시면 감사하겠습니다!
- 미해결홍정모의 따라하며 배우는 C언어
int_fast8_t
int_fast8_t f8는 8비트 중에서 가장 빠른것이라고 했는데 8비트중에서 가장 빠르다?? 라는게이 무슨 뜻인가요??
- 미해결홍정모의 따라하며 배우는 C언어
int_least8_t
int_least8_t = i8은 적어도 8비트를 가지고 있는 가장 작은 타입으로 i8이라는 변수를 선언을 해주신다고 하셨는데 그러면 최소한 8비트를 선언해준다는 소리가 맞나요??만약에 맞다면 큰 메모리 공간을 사용해야하는 데이터가 있으면 16비트도 선언이 가능하고 32 비트 등등 이 사용가능하다는 건가요??
- 미해결홍정모의 따라하며 배우는 C언어
질문입니다!!
이 코드에서 제가 number에 010~으로 입력을 했는데 왜 출력이 될때에는 10~으로 시작하는지 모르갰어요....
- 미해결홍정모의 따라하며 배우는 C언어
코딩할때 설계가 너무 어렵게 느껴집니다.
강의내용에 대한 질문은 아니지만 너무 답답해서 질문드립니다. 교수님 강의도 듣고 혼자 공부도 해서 c언어를 어느정도 이해하고 있다고 생각하는데 조금 어렵거나 복잡한 문제를 풀게 되면 설계하기가 너무 힘듭니다. 전 코딩을 하기 전에 먼저 설계를 하고 코딩을 하는게 맞다고 생각해서 설계 후 코딩을 하는식으로 문제를 풀고 있습니다. 간단한 문제들은 쉽게 설계가 가능하고 그 설계를 바탕으로 코드를 구현하고 있는데 복잡한 문제들을 풀때면 몇시간 며칠을 고민해도 접근자체가 잘 안됩니다. 이게 c언어에 대한 이해가 부족해서 일어나는 현상인지 아니면 따로 공부해야 하는 지식이 있는건지 궁금합니다.