묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
2024년 2회 C언어 문자열 문의드립니다.
#include <stdio.h>void strcopy(char d[], const char s[]) { int i = 0; while (s[i] != '\0') { d[i] = s[i]; i++; } d[i] = '\0';}int main() { char str1[] = "first"; char str2[50] = "teststring"; int result = 0; strcopy(str2, str1); for (int i = 0; str2[i] != '\0'; i++) { result += i; } printf("%d\n", result); for (int i = 0; i < 10; i++) { printf("%c", str2[i]); }}출력값:10first ring printf("%c", str2[i]); // first ring 이렇게 출력되었는데 while (s[i] != '\0') { d[i] = s[i]; i++; } d[i] = '\0';여기서 while타고 s[i]에 first 마지막인 t 가 들어가면 다음 배열이 들어가지않으니 d[i] = '\0'; 들어가고 firist\0 담기는게 아닌가해서 질문드립니다. 그래서 출력값이 first ring 이렇게 나오는게 맞을까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
java -jar 버전 문제
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]위와 같은 에러가 뜹니다.프로그램에서 java 11이나 jdk 11 버전은 모두 삭제되어 있습니다. (choco uninstall openjdk11 명령어 실행 시 openjdk11이 uninstall 되어있다는 fail이 뜸)환경변수도 모두 17버전으로 맞춰놓은 상태입니다../gradlew build까지는 됐는데 java -jar 했을 때 오류가 납니다.
-
해결됨대기업 근무하며 경험한 Redis를 야무지게 사용하는 방법 [이론편]
Redis란 무엇인가? 질문사항
강의의 내용중 3:35 즈음에인메모리 같은 ssd 같은 메모리를 사용을 한다고 하셨는데궁금증이 생겼습니다.ssd는 제가 알기로는 디스크로 알고 있는데메모리라고 하셔서 궁금하고,ssd를 언급하신 이유는 지속성 옵션 관련해서 말씀 하신건지이 두 부분이 궁금하여 질문 올려봅니다:)
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
실험으로 시간에 이상한값을 넣었는데..
테스트 해보려고 endTime에 41를 넣어서 저장을 눌렀는데 그 이후로 일정을 제대로 입력해도 일정이 아무것도 추가가 되지 않습니다. database에 문제가 생긴것같아서 sql파일을 초기화 해주고 싶은데 파일이 어디있는지도 잘모르겠네요..
-
해결됨한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지
nav('/', { replace: true }); 뒤로가기 방지
import Header from '../components/Header'; import Button from '../components/Button'; import Editor from '../components/Editor'; import { useNavigate } from 'react-router-dom'; import { useContext } from 'react'; import { DiaryDispatchContext } from '../App'; const New = () => { const nav = useNavigate(); const { onCreate } = useContext(DiaryDispatchContext); const onSubmit = (input) => { onCreate(input.createdDate.getTime(), input.emotionId, input.content); nav('/', { replace: true }); }; return ( <div> <Header title={'새 일기 쓰기'} leftChild={ <Button text={'< 뒤로 가기'} onClick={() => { nav(-1); }} /> } /> <Editor onSubmit={onSubmit} /> </div> ); }; export default New; 여기서 nav('/', {replace:true});로 뒤로가기(New 페이지로 가는 것)를 방지했는데,뒤로가기를 한 번 눌렀을 때는 잘 동작하는데두 번 눌렀을 때부터 뒤로 가집니다. 혹시 원래 이런건가요? 아니면 제가 뭔가 잘못한건가요?
-
해결됨BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)
1-6. 데이터 PIVOT 연습문제
빅쿼리 날짜 타입 입력할때 큰따옴표, 작은 따옴표 둘 중에 아무거나 입력해도 상관없을까요?
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
image1.setOnClickListener { }
image1.setOnClickListener { } 여기서 괄호에 엔터 치시면 it: view! 가 회색으로 바뀌시던대 저는 엔터쳐도 아무 반응이 아무것도 안뜨네요 .. 제가 임의로 it: view!를 쳐넣어도 회색으로 바뀌지도 않고요.. 어찌해야하나요
-
해결됨Readable Code: 읽기 좋은 코드를 작성하는 사고법
리팩토링과 기능 추가에 대한 질문
게임의 난이도를 추가하는 부분에서 행과 열의 사이즈가 상수로 고정되어 있기 때문에 확장에 닫혀있어 OCP가 충족되지 않는 상태라고 하셨는데기능 추가와 리팩토링에 대해 질문이 있습니다. 1) GameLevel인터페이스와 각각의 난이도별 클래스를 작성하는 과정은 OCP를 만족하는 코드로 바꾸는 과정이니까 '리팩토링으로 기능 추가를 용이하게 하는 과정'이라고 봐야하나요? 2) 사용자에게 난이도를 선택할수 있게 물어보는 부분을 작성한다면 그 과정을 기능 추가로 보고 그 이전 단계까지는 리팩토링인건가요? 3) 보통 리팩토링과 기능 추가가 자연스레 같이 이뤄지는 경우에는 커밋을 분리하는지 한 번에 하는지도 궁금합니다.
-
미해결
JIRA에서 이슈 생성 시, 에픽 이슈를 자동으로 할당하고싶어요
JIRA에서 이슈 생성 시, 자동화 기능을 이용하여 에픽 이슈를 자동으로 할당하고 싶은데 단순 이슈 필드 편집에선 상위 항목으로 처리하는 거 같은데 어떻게 하면 될지 아이디어가 있을까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
코드 구현한 부분에서 Disconnect()함수가 동시 실행되는 경우가 있나요?
여러 스레드에 의해 동시에 Disconnect()가 여러번 실행되는 걸 막으려고 Interlocked를 사용하여 처리한다고 하셨는데 현재 Session#1 강의 코드까지는 위와 같은 상황이 발생할 부분이 보이지 않는다고 생각하는데 맞을까요?
-
미해결나도코딩의 자바 기본편 - 풀코스 (20시간)
QUIZ8 질문입니다.
package chap_08.camera; import chap_08.detector.AccidentDetector; import chap_08.detector.Detectable; import chap_08.reporter.Reportable; import chap_08.reporter.VideoReporter; public class SpeedCam extends Camera{ private Detectable detector; private Reportable reporter; public void setDetector(Detectable detector) { this.detector = detector; } public void setReporter(Reportable reporter) { this.reporter = reporter; } @Override public void showMainFearture() { System.out.println("속도 측정, 번호 인식"); } public void detect(){ this.detector.detect(); } public void report(){ this.reporter.report(); } public void setDetector(AccidentDetector accidentDetector) { } public void setReporter(VideoReporter videoReporter) { } }package chap_08; import chap_08.camera.SpeedCam; import chap_08.detector.AccidentDetector; import chap_08.reporter.VideoReporter; public class _Quiz_08 { public static void main(String[] args) { SpeedCam speedCam = new SpeedCam(); speedCam.setDetector(new AccidentDetector()); speedCam.setReporter(new VideoReporter()); speedCam.detect(); speedCam.report(); } } 전부 다 강의 보면서 쳤는데 저렇게 에러가 떠서요. 뭐가 문제일까요?
-
미해결카프카 완벽 가이드 - 코어편
max.in.flight.requests.per.connection 의 설명이 조금 헷갈립니다.
안녕하세요. max.in.flight.requests.per.connection에 대한 설명이 조금 헷갈려서 질문드립니다. 강의를 들으면 하나의 request 안에 여러개의 배치를 함께 보내는 것처럼 말씀하시는 것처럼 보이는데, 하나의 요청에는 하나의 배치만을 담아서 보내지만 ack를 받지 못하고 계속 보낼 수 있는 요청의 개수가max.in.flight.requests.per.connection 인 것이 아닐까요?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
graphql 에 이렇게 뜨는 버그 어떻게 해결할 수 있나요?
원래는 그렇지 않았는데 전부터 graphql 에서 api 테스트 해보려고 하면 아래에 항상 이런방식으로 글자 나타나고 사라지지 않더라고요.. 맥을 사용하고 있는데 이거 어떤 방식으로 해결할 수 있나요?
-
미해결
이득우 선생님 도와주세요. actor,widget 생성 주기 질문이 있습니다.
위 사진에 생성주기를 보고 의문이 생겼는데요. 다음 코드에서 BeginPlay시점에서는 CreateWidget과 AddToViewport가 아직 호출 안 됬잖아요, 그럼widget이 아직 만들어 진게 아니고 widget class 객체만 만들어졌다고 보는게 맞나요?만약 그게 맞다면, CreateWidget함수는 위젯 객체 말고 다른걸 만드는 건가요?
-
해결됨PM을 위한 데이터 리터러시(프로덕트 데이터 분석)
4-8 지표 정하기 연습 문제 답변
안녕하세요. 카일스쿨님연습문제 푼 것 올려봅니다! 문제 1답: 서비스의 클릭률, 체류시간, 결제 성사율 확인이유:기능이 잘 동작하고 있는지 확인하는 가장 직접적인 지표이기 때문버튼을 크게 만들어서 클릭율이 높은 것일 수 있으니 체류 시간 확인'메뉴 카테고리'와 '이런 음식 어때요', '동네 맛집'은 사용자가 배달음식을 편하고 쉽게 잘 시켜 먹을 수 있게 통로를 전달하는 것이기 때문에 각 기능에서 실질적으로 '구매'로 연결 되는지 확인할 필요가 있음 문제 2답: 1) 검색창 클릭율 지표 확인 2) 노출되는 식당 리스트 클릭율 확인3) 결제 완료율 확인이유:검색 플로우뭐 먹을까? 고민 > 실시간 검색어 클릭 > '치킨' 검색 > 가격 낮은 순으로 필터링 > 여러가지 순에서 '순살 치킨'클릭 > 결제 완료위 검색 플로우에서 '검색창 버튼 클릭'과 '식당 리스트 클릭' 후 결제까지 잘 이루어지는지 확인이 된다면 만족도가 높은 것이라 생각합니다.추가로 궁금한 점이 있습니다.문제를 풀 때 제 기준에서도 생각하다보니 아래와 같은 플로우도 고민해볼 수 있겠다 생각이 들었는데요. 이런 변수들은 고민 과정에서 제외하는게 맞겠죠?순살치킨 말고 뼈 치킨을 좋아해서 이탈 > '후라이드 치킨' 클릭그렇다면 부수적인것은 제외한 완전한 플로우로만 생각해야하는지 궁금합니다. 고민>검색>선택>결제 순으로요!문제3답: 필터 버튼 클릭 이벤트, 필터 선택 완료 이벤트이유:플로우 : 검색 > 필터 버튼 클릭 > 필터 선택 후 클릭필터 기능의 활성화 지표를 정의하려면 클릭해서 사용하는지 확인한다.문제4답:1. 공급 : 배달 가능한 식당 - 업체 수 증가 지표2. 수요 : 사용자 - 신규 사용자, 리텐션, 결제 완료 지표공급: 배달 가능한 식당수요: 배달을 이용하는 사용자어떻게 늘리는가?공급 : 업체를 어떻게 늘리는가?홍보가 잘 되는가?낮은 수수료로 이익을 전달할 수 있는가?어플 이용이 가게 수익에 실질적 도움이 되는가?수요 : 사용자를 어떻게 늘리는가? 이벤트가 많은가?배달팁이 없거나 적은가?주문가능한 업체의 수가 많은가?문제5답:사용자가 추천한 상품을 클릭하는가클릭이 구매로 이어지는가이유:추천 알고리즘의 본질은 결국 사용자에게 맞는 제품 추천하고, 빠른 구매로 이어지게끔 하는 것이기 때문입니다.문제6답:내가 자주 사용하는 앱 ‘인스타그램’가장 중요한 지표 : 리텐션이유 : 일기처럼 이용하는, 정보를 확인하는, 소통하는 SNS이기 때문이다.추가 확인 지표 1 : 신규 이용자 수추가 확인 지표 2 : 새 콘텐츠 업로드 수문제7답:가입 프로세스 전체 이탈율 확인온보딩 추가 전/후 이탈율 확인이상입니다. 아직 클릭율이나 이탈율, 결제 완료 정도로 밖에 생각이 안들고 어떤 것을 더 확인하면 좋을지 확장이 어려운 것 같아요.강의 복습 더 해보겠습니다.좋은 강의 감사합니다!
-
해결됨그림으로 쉽게 배우는 운영체제
임계구역 궁금증
-수업을 듣다가 궁금한 점이 생겨서 문의드립니다.임계구역에은 하나의 프로세스만 진입하고, 최대한 빠르게 나와야 된다고 말씀하셨는데, 만약 임계구역 안에서 컨텍스트 스위칭이 이루어질 경우에는 어떻게 되나요? 해당 프로세스가 대기상태이지만 여전히 임계구역에서 나온건 아니니, 다른 프로세스는 진입할 수 없나요? 만약 진입할 수 없는 경우에는 이 임계구역에 대한 요청이 쌓이게될텐데 이런 경우 어떻게 해결해야하나요?
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
Confidence score가 높을수록 많은 Box가 제거된다?
"NMS의 이해" 편 5:40에서 "Confidence score가 높을수록, IoU Threshold가 낮을수록 많은 Box가 제거된다"라고 말씀하셨는데,Confidence score가 아닌, Confidence threshold가 아닌지 질문 드립니다.
-
미해결[게임 프로그래머 도약반] DirectX11 입문
애니메이션 변환 행렬에 대해 질문이 있습니다.
제가 이해한 바로는애니메이션 변환 행렬은 T-pose 에서 root를 기준으로 하는 SRT의 역행렬 x 애니메이션이 움직인 로컬 SRT x 애니메이션이 움직인 root를 기준으로 하는 SRT로 구성되어 있다고 이해했습니다. 그래서 T-pose 에서 root를 기준으로 하는 좌표를 위의 변환 행렬에 곱을 하게되면 애니메이션이 동작한 root를 기준으로 하는 좌표로 변환된다고 이해했습니다. 그런데 VS 단계인MeshOutput VS(VertexTextureNormalTangentBlend input) 에서 애초에 input은 제가 지금까지 수업을 들으면서 이해한 바로는 이미 T-pose에서 로컬 좌표인 것으로 알고 있습니다.그러면 애니메이션 변환 행렬에서 굳이 T-pose 에서 root를 기준으로 하는 좌표계의 역행렬을 곱해줄 필요가 있는지 궁금합니다! T-pose 에서 root를 기준으로 하는 좌표계의 역행렬을 곱하는 이유는 T-pose의 로컬 좌표로 변환하기 위함인데 이미 input이 로컬이니까요!AI 답변으로 이해가 가는 경우도 있지만 아닌 경우가 많아서 답변을 해주셨으면 감사하겠습니다! 항상 잘 보고 있어요!
-
해결됨[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
프로젝트 생성 오류
❗질문 작성시 꼭 참고해주세요최대한 상세히 현재 문제(또는 에러)와 코드(또는 github)를 첨부해주셔야 그만큼 자세히 답변드릴 수 있습니다.맥/윈도우, 안드로이드/iOS, ReactNative 버전 등의 개발환경도 함께 적어주시면 도움이 됩니다. 에러메세지는 일부분이 아닌 전체 상황을 올려주세요. (일부만 잘라서 올리지 말아주세요.) 안녕하세요 강의 중 프로젝트 생성 명령어를 입력하면 아래와 같은 오류가 발생합니다 ㅠ 왜이런걸까요?gongmyeong@Huns-Pro documents % npx react-native@0.72.6 init MatzipApp --version 0.72.6Need to install the following packages:react-native@0.72.6Ok to proceed? (y) y npm warn ERESOLVE overriding peer dependencynpm warn While resolving: react-native@0.72.6npm warn Found: react@undefinednpm warn node_modules/reactnpm warnnpm warn Could not resolve dependency:npm warn peer react@"18.2.0" from react-native@0.72.6npm warn node_modules/react-nativenpm warn react-native@"0.72.6" from the root projectnpm warn 1 more (@react-native/virtualized-lists)npm error code EEXISTnpm error syscall mkdirnpm error path /Users/gongmyeong/.npm/_cacache/content-v2/sha512/85/78npm error errno EEXISTnpm error Invalid response body while trying to fetch https://registry.npmjs.org/@react-native%2fcodegen: EACCES: permission denied, mkdir '/Users/gongmyeong/.npm/_cacache/content-v2/sha512/85/78'npm error File exists: /Users/gongmyeong/.npm/_cacache/content-v2/sha512/85/78npm error Remove the existing file and try again, or run npmnpm error with --force to overwrite files recklessly.npm error A complete log of this run can be found in: /Users/gongmyeong/.npm/_logs/2024-10-08T11_51_49_358Z-debug-0.log
-
해결됨입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
projectRepository assertion 오류 질문입니다.
projectRepositoryTest.kt 파일을 아래와 같이 작성했는데 assertion 오류가 나서 원인을 모르겠어서 해당 파일 코드 첨부합니다. 94줄과 111줄 오류인 걸로 보아 skills를 assert할 때 뭐가 잘못된 것 같은데 어떻게 고쳐야 하는지 잘 모르겠습니다..!package com.yewon.portfolio.domain.repository import com.yewon.portfolio.domain.constant.SkillType import com.yewon.portfolio.domain.entity.Project import com.yewon.portfolio.domain.entity.ProjectDetail import com.yewon.portfolio.domain.entity.ProjectSkill import com.yewon.portfolio.domain.entity.Skill import org.assertj.core.api.Assertions import org.assertj.core.api.Assertions.* //import com.yewon.portfolio.domain.entity.* //import org.assertj.core.api.Assertions.* import org.junit.jupiter.api.BeforeAll import org.junit.jupiter.api.Test import org.junit.jupiter.api.TestInstance import org.springframework.beans.factory.annotation.Autowired import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest @DataJpaTest @TestInstance(TestInstance.Lifecycle.PER_CLASS) class ProjectRepositoryTest( @Autowired val projectRepository: ProjectRepository, @Autowired val skillRepository: SkillRepository ) { val DATA_SIZE = 10 private fun createProject(n: Int): Project { val project = Project( name = "${n}", description = "테스트 설명 {n}", startYear = 2023, startMonth = 9, endYear = 2023, endMonth = 9, isActive = true ) val details = mutableListOf<ProjectDetail>() for (i in 1..n) { val projectDetail = ProjectDetail(content = "테스트 ${i}", url = null, isActive = true) details.add(projectDetail) } project.addDetails(details) val skills = skillRepository.findAll() val skillsUsedInProject = skills.subList(0, n) for (skill in skillsUsedInProject) { val projectSkill = ProjectSkill(project = project, skill = skill) project.skills.add(projectSkill) } return project } @BeforeAll fun beforeAll() { println("----- 스킬 데이터 초기화 시작 -----") val skills = mutableListOf<Skill>() for (i in 1..DATA_SIZE) { val skillTypes = SkillType.values() val skill = Skill(name = "테스트 ${i}", type = skillTypes[i%skillTypes.size].name, isActive = true) skills.add(skill) } skillRepository.saveAll(skills) println("----- 스킬 데이터 초기화 종료 -----") // println("----- 데이터 초기화 이전 조회 시작 -----") // val beforeInsert = projectRepository.findAll() // assertThat(beforeInsert).hasSize(0) // println("----- 데이터 초기화 이전 조회 종료 -----") println("----- 테스트 데이터 초기화 시작 -----") val projects = mutableListOf<Project>() for (i in 1..DATA_SIZE) { val project = createProject(i) projects.add(project) } projectRepository.saveAll(projects) println("----- 테스트 데이터 초기화 종료 -----") } @Test fun testFindAll() { println("----- findAll 테스트 시작 -----") val projects = projectRepository.findAll() assertThat(projects).hasSize(DATA_SIZE) println("projects.size: ${projects.size}") for (project in projects) { assertThat(project.details).hasSize(project.name.toInt()) println("project.details.size: ${project.details.size}") assertThat(project.skills).hasSize(project.name.toInt()) println("project.skills.size: ${project.skills.size}") } println("----- findAll 테스트 종료 -----") } @Test fun testFindAllByIsActive() { println("----- findAllByIsActive 테스트 시작 -----") val projects = projectRepository.findAllByIsActive(true) assertThat(projects).hasSize(DATA_SIZE) println("projects.size: ${projects.size}") for (project in projects) { assertThat(project.details).hasSize(project.name.toInt()) println("project.details.size: ${project.details.size}") assertThat(project.skills).hasSize(project.name.toInt()) println("project.skills.size: ${project.skills.size}") } println("----- findAllByIsActive 테스트 종료 -----") } }