묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨홍정모의 따라하며 배우는 C언어
문자열 크기와 null character 위치.
안녕하세요,문자열(문자형 배열)을 정의할때, 문자열 리터럴의 크기와 문자형 배열의 size가 같으면 null character가 붙지 않는 것 같은데 이 경우 왜 붙지 않는지 궁금합니다. 그림 처럼 디버거로 찍어보고 null character가 붙지 않는다고 판단했습니다.그리고 추가로, 출력했을 때 하기 그림처럼 이상한 한자가 나오는 이유는 printf 가 문자열을 출력하다가 null character를 만나지 못해 메모리의 엉뚱한 곳에 저장되어있는 쓰레기 값을 읽어오다가 컴파일러가 멈췄다 라고 이해하면 될까요?마지막으로, 그렇다면 char 형 배열을 선언할 시 리터럴의 크기보다 1만큼 크게 해줘야 하는지 궁금합니다.null character가 printf() 함수 사용시 용의성을 위해 문자열끝에 붙여지는 것이라면, 바꿔말하면 printf 를 사용하지 않을거라면 굳이 필요없으니까 제가 한것처럼 배열 크기와 리터럴 크기를 일치시키는게 좋을 것 같은데 맞게 생각했는지 궁금하니다.
-
해결됨스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
BindException이 아니라 MethodArgumentNotValidException이 뜨는 이유
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]@ResponseBody @RequestMapping("/model-attribute-v1") public String modelAttributeV1(@ModelAttribute HelloData helloData) { log.info("username = {}, age = {}", helloData.getUsername(), helloData.getAge()); return "ok"; }강의 내용대로 작성했고 HelloData도 마찬가지로 똑같이 작성했습니다. 그리고 웹 브라우저로http://localhost:8080/model-attribute-v1?username=a&age=abc이렇게 의도적으로 age에 문자열을 넣었는데요 저도 당연히 BindException이 나올 줄 알았는데MethodArgumentNotValidException가 뜹니다. 구글링해 보니 BindException이랑 MethodArgumentNotValidException이 생기는 원인은 좀 다른 것 같은데 왜 전 코드가 강의랑 비슷한데도 예외가 다르게 나올까요? +) 오류 메시지입니다. 2024-02-10T17:28:59.250+09:00 WARN 17376 --- [nio-8080-exec-1] .w.s.m.s.DefaultHandlerExceptionResolver : Resolved [org.springframework.web.bind.MethodArgumentNotValidException: Validation failed for argument [0] in public java.lang.String hello.springmvc.basic.request.RequestParamController.modelAttributeV1(hello.springmvc.basic.HelloData): [Field error in object 'helloData' on field 'age': rejected value [abc]; codes [typeMismatch.helloData.age,typeMismatch.age,typeMismatch.int,typeMismatch]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes [helloData.age,age]; arguments []; default message [age]]; default message [Failed to convert property value of type 'java.lang.String' to required type 'int' for property 'age'; For input string: "abc"]] ]
-
미해결Java/Spring 주니어 개발자를 위한 오답노트
변하는 값을 추상화 시켜라
안녕하세요 강의 잘 보고 있습니다.다름이 아니라 5분 48초에 나오는 부분에서 DIP 원칙으로 설계 하셨는데..그럼 결국에 프로덕션에서는 getMils() 메서드를 사용하면 똑같이 내부적으로 의존성이 감춰지기 때문에 초반에 설명하신거하고 똑같은 상황이 되는게 아닌가요?? 감사합니다!
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
./gradlew dependencies —configuration compileClasspath 에러
안녕하세요!gradle 의존관계 보기에서 ./gradlew dependencies —configuration compileClasspath를 입력하면,위와 같이 실패했다고 뜹니다.build.gradle은 위와같습니다. 무엇이 문제일까요??
-
미해결김영한의 실전 자바 - 기본편
객체 지향 프로그래밍 개념에 대한 질문
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요 영한님 편안한 설 연휴 보내고 계신가요? :)자바 중급, 고급편 준비하시느라 고생이 많으실 것 같고, 또 정말 감사하다는 말씀 드리고 싶습니다. 강의 준비하시면서 목이 많이 상하시진 않을지 걱정도 되네요 감기 조심하시길 바랍니다제가 질문 드리는 부분은 해당 강의에서 설명하신것 처럼 ‘객체지향 프로그래밍은 속성(데이터)과 기능(메서드)이 하나의 클래스에 포함되어 하나의 객체를 완전히 형성하는 것’으로 설명해주셨습니다. 그런데 도메인 패키지에 있는 데이터만 들어있는 클래스와 서비스 패키지에 있는 서비스 클래스에 있는 기능만 포함된 메소드가 있다면 데이터와 기능이 분리된 형태로 보이는데요, 해당 부분 또한 객체지향프로그래밍이라고 볼 수 있을까요? 개념에 대한 간극이 생겨서 궁금해져 질문 드리는점 양해 부탁드립니다(_ _) 좋은 강의 해주셔서 정말 감사합니다!
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
비디오 플레이어 만들기에서요
비디오 플레이어 만들기에서요 Setstate를 쓰지 않고요!!! 멈추고 시작하는 부분에서 시작중인가 그럼 멈춰라 멈추었나 그럼 시작해라. 이런 코드를 넣잖아요 그래서 아이콘이 바뀌지는 않지만!! 누르면 멈추고 실행이 동작은 되는데 왜 Setstate를 넣지 않으면 아이콘이 바뀌지않는건 당연하다 생각하는데. 멈추고 실행하는 동작도 안되야 하지 않나 싶어서요 이런 동작을 안할 거 같은데 말이죠…,,
-
미해결[리뉴얼] 처음하는 파이썬 데이터 분석 (쉽게! 전처리, pandas, 시각화 전과정 익히기) [데이터분석/과학 Part1]
조건 산식 표현 관련 질문 (~개 이상)
아래와 같이 연습문제에서 "~개 이상" 이라는 조건에서선생님께서는 >= 등호를 사용하지 않으시고 > 만 사용하시더라고요.저는 >= 로 알고 있었는데.. 혹시 제가 잘못 알고 있었던건가요?ㅠㅠ
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
바로 jpa가도될까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 꾸준하게 강의 들어온 학생입니다. 개강이 얼마 안남아서 jpa로 실제 웹서비스 구현하는 것까지 해보고싶은데 db커리큘럼을 잠깐 건너뛰고 수강해도될까요? 물론 나증에 추가로 들을 예정입니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
교안 81p 예제코드 질문드립니다.
안녕하세요 큰돌님교안 81p 예제 코드를 그대로 복사하였는데 에러가 떠서요. 짧은 코드라서 캡쳐본으로 올리겠습니다.위에서 전역변수로 초기화하는 것까지 똑같이 했는데 왜 이런 오류가 뜨는 것인지 궁금합니다.
-
미해결스프링과 JPA 기반 웹 애플리케이션 개발
5:50에 나오는 HTML코드는 어디서 찾을 수 있나여?
해당 코드가 깃 저장소에서 참고할 수 있다고 해서 찾아보려는데 강의 자료에 보면 수업마다 커밋 아이디를 추가해 놨다고 되어있던데 도대체 어디있는지 모르겠어요
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
교안 79p vector 초기화 질문드립니다.
안녕하세요 큰돌님강의를 듣고 천천히 따라가고 있는데요, 강의 설명도 너무 이해되게 잘해주시고 교안도 잘 보고 있습니다.그런데 몇 가지 아쉬운 부분들이 있어서요..ㅠㅠc++을 처음 접하는데 가끔 예시코드를 봤을 때 설명 않고 넘어가시는 부분이 있기에 이해가 안될 때가 종종 있습니다.. ㅜㅜ 예를 들어 교안 79p에서vector<int> v{1, 2, 3};이 코드에서 지금 vector가 초기화가 어떻게 된 것인지 주석이라도 간략하게 달아주셨으면 좋겠는데 따로 찾아봐도 이거랑 비슷한 방식의 초기화를 잘 못찾겠어서요.. 제가 코드를 더 작성해서 저렇게 초기화된 건 v = {1, 2, 3}과 같다고 유추하였는데 맞을까요..?아직 교안 전부를 본 것은 아니라 뒤에 설명을 해주실지는 모르지만, 당장의 예제 코드를 이해하기 위해서 추가적으로 구글링하고 하는 부분들이 조금 시간이 소요되는 것 같습니다 그리고 다른 부분에서도, 교안에서 처음 push_back()이 언급됐을 때 문자하나씩밖에 더하지 못한다고 설명해주셨는데, split() 강의에서는 string 단위로 push_back(token) 해서 문자열이 추가되는 거 보고 혼란스럽기도 했습니다..ㅜㅜ 다르게 이해될 소지 없이 분명하게 설명해주셨으면 좋겠습니다..TrivallyCopyable도 그렇고,이런 UB같은 것도 그렇고 이미 알고 있을 거라고 생각하시고 넘어가시는 부분들에, 물론 중요한 설명을 빠뜨리신 것은 절대 아니지만 이런 작은 부분들이 모여서 제가 교안 외에 따로 검색을 하거나 찾는 부분이 잦게되다 보니, 시간도 걸리고 자꾸 흐름이 끊겨서요..시간이 걸리더라도 이러한 부분들에 대해서 간단한 주석이라도 설명해주시면 예제코드를 보았을 때 바로 이해하기가 더 좋을 것 같다는 생각이 들었습니다..! 큰돌님 유튜브도 잘 보고있고 이미 충분히 질 좋은 강의와 빠른 피드백으로 감사함이 참 많은데.. c++을 처음 접하는 사람들도 들을 수 있다고 하셔서, 이 강의 하나로 c++을 빠르게 공부할 목적으로 구매한 것이라 제 욕심이지만 말씀드립니다..ㅠㅠ
-
미해결모든 개발자를 위한 HTTP 웹 기본 지식
Tcp 질문이요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. Tcp라는게 들어보니까 좀 추상적인것같아서요 게임이나,채팅프로그램을 이용할때 TCP프로토콜을 사용하면서 통신한다고 이해해도될까요?
-
미해결작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지
21강 CreateView를 통한 회원가입 구현 질문
class AccountCreateView(CreateView): model = User form_class = UserCreationForm success_url = reverse_lazy('accountapp:hello_world') template_name = 'accountapp/create.html' 위 부분에서 User, UserCreationForm은 왜 User(), UserCreationForm() 처럼 괄호 붙혀서 선언안하는 건가요?
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
질문 있습니다
락이 걸려있으면 다른 직원한테 부탁해서 대리로 줄서달라는 느낌이군요그런데 이 다른 직원이 사실은 식당 관리자쪽의 직원이었다라고 하셨는데다른 직원을 윈도우즈 커널 쪽에 있는 스레드라고 생각하면 될까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-R 질문있습니다!
#include <bits/stdc++.h> using namespace std; int n,a[52],k,ret; vector<int> adj[52]; bool b[52]; void cut(int node){ b[node] = false; for(int s : adj[node]){ cut(s); } } int main(){ //입력 받기 cin >> n; for(int i = 0; i < n; i++){ cin >> a[i]; if(a[i]!=-1) adj[a[i]].push_back(i); b[i] = true; } cin >> k; // 노드 삭제 cut(k); for(int i = 0; i < n; i++){ if(adj[i].size() == 0 && b[i] == true) ret++; } cout << ret; } //테스트 케이스 통과 but 틀림..제 코드에서 놓친게 무엇일까요..!현재 노드에서 이어진 것이 없고, 잘리지 않았다면 리프노드로 판단해서 수를 카운트 해주었는데 오답입니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
원핫인코딩 질문
3-4. 의 원핫인코딩에서는c_train = pd.get_dummies(c_train[cols])c_test = pd.get_dummies(c_test[cols]) 3-6. 의 원핫인코딩에서는train = pd.get_dummies(train, columns=cols)test = pd.get_dummies(test, columns=cols)라고 되어 있네요ㅠ 3-6에서도 3-4처럼train = pd.get_dummies(train[cols])test = pd.get_dummies(test[cols])로 실행해 봤는데 결과가 다르게 나오네요! 왜 3-4에서는 [cols] 라고 하고,3-6에서는 columns=cols라고 하는건가요?ㅠ
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part3: 유니티 엔진
씬 전환시 리소스 로드 에러
안녕하세요 질문이 있습니다.각각의 씬으로 테스트 할 때에는 잘 되는데, 로그인 씬에서 게임 씬으로 넘어갈 때에 리소스를 로드하는 부분에서 문제가 생깁니다.(@EventSystem, UI_Inven 등의 GameObject) NullReferenceException 이 발생하는데, 문제는 해당 부분에 중단점을 걸고 코드 단위로 테스트해봐도 문제를 알 수 없이 그냥 끝이 납니다.
-
미해결앨런 iOS Concurrency(동시성) - 디스패치큐와 오퍼레이션큐의 이해
예제 프로젝트 빌드 실패
예제 프로젝트를 실행할 수가 없습니다.애플 developer 계정을 반드시 만들어야 하나요? 아직 초보라서 좀 익숙해지면 하려고 했는데...
-
미해결홍정모의 따라하며 배우는 C++
함수와 변수에서 extern 키워드가 생략될때의 메커니즘 차이
안녕하세요, extern 키워드가 생략될때의 메커니즘이 함수와 변수에 차이가 있는 것 같은데 이해가 되지않아 질문드립니다. 우선 교수님께서 forward declaration 설명주실때,void doSomething(); 에서 앞에 extern 키워드가 생략된 것이라고, 변수도 똑같이 생략된것이라고 말씀주십니다. 하지만 제가 실험해본바로 변수는 좀 다른 것 같습니다.어떤 실험을 해봤냐면요,"Main.cpp""testGlobal.cpp"실행시키면 multiply definition 에러가 뜨는데요,Main.cpp 파일에서 g_testGlobal 을 선언할때 int로만 선언하는게 아닌 extern int로 선언하면 에러가 안뜹니다.만약 extern 키워드가 생략된 것이라는 교수님의 말씀이 맞다면, 왜 extern int g_testGlobal; 는 에러가 안뜨고 int g_testGlobal; 은 에러가 뜨는지 궁금합니다. 둘다 에러가 안떠야 extern 이 생략된게 맞지 않나요? 다음 실험도 봐보시면 좀 더 명확한데요,"Main.cpp""testGlobal.cpp" 파일에서이렇게 extern 키워드를 바꿔치기하면 또 빌드가 잘 됩니다.여기서는 하기 답변을 참고했을 때, 위 코드가 성공적으로 빌드되는 이유를 생각해봤는데요, https://www.inflearn.com/questions/102747/42-20-%EC%BD%94%EB%94%A9%EC%97%90-%EB%AC%B8%EC%A0%9C%EA%B0%80-%EC%97%86%EC%96%B4-%EB%B3%B4%EC%9D%B4%EB%8A%94%EB%8D%B0-%EB%B9%8C%EB%93%9C%EA%B0%80-%EC%95%88%EB%90%A9%EB%8B%88%EB%8B%A4 Main.cpp 에서 obj파일이 만들어질때 g_testGlobal 변수를 extern으로 선언했으므로 g_testGlobal 변수가 어딘가 저장되어있을거라는 정보를 컴파일러에게 건네주고, 그 값을 testGlobal.cpp 의 obj 파일이 링킹될때 건네 받아 사용하는것으로 이해했습니다.하지만 반대의 경우는 안되는 것이 이해가 가지 않습니다. 왜 두번째 경우에선 tetsGlobal.cpp에서 extern을 안써줘도 빌드가 되는지 모르겠습니다. 감사합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-O 질문있습니다!
#include <bits/stdc++.h> using namespace std; int main(){ string s; while(true){ getline(cin, s); if (s == ".") break; stack<char> stk = {}; for (char c : s) { if (c == ')' && stk.size() && stk.top() == '(') { stk.pop(); } else if (c == ']' && stk.size() && stk.top() == '[') { stk.pop(); } else if (c == '(' || c == '[') { stk.push(c); } else { continue; } } if (stk.empty()) { cout << "yes" << '\n'; } else { cout << "no" << '\n'; } } } 이 코드가 틀린 이유가 뭘까요..ㅠ 도저히 모르겠네요.그리고, 정답 풀이에서 check bool 변수가 하는 역할이 무엇일까요? 제 코드와의 차이가 check 플래그 변수가 없다는 것이 가장 큰 차이인 거 같은데 왜인지 모르겠습니다..