우선 이전 질문/답변을 통해서 eslint 설정 파일명이 바뀐것을 알게되었습니다. 문제는 강의의 코드와 저의 코드가 다르다는 점인데, 이정환 강사님께서 설정하신 그대로 따라간다면 rules: { "no-unused-vars": "off", "react-prop-types": "off", }, 이 코드만 추가하면되는걸까요? 강의에서는 rules 프로퍼티가 이미 있고 해당 객체 내부에 react-refresh/only-export-components ~가 있는데 제 코드에는 rules 자체가 없습니다. 26-07-01 기준 현재 vite 프로젝트의 eslint.config.js 파일 코드 export default defineConfig([ globalIgnores(["dist"]), { files: ["**/*.{js,jsx}"], extends: [ js.configs.recommended, reactHooks.configs.flat.recommended, reactRefresh.configs.vite, ], languageOptions: { globals: globals.browser, parserOptions: { ecmaFeatures: { jsx: true } }, }, }, ]);
저장소가 없는 것같은데 .. 잘못한건가요? ⎿ Error: Failed to clone marketplace repository: Cloning into 'C:\Users\lee.claude\plugins\marketplaces\gymcoding-my-marketplace'... remote: Repository not found. fatal: repository ' https://github.com/gymcoding/my-marketplace.git/ ' not found
#include <stdio.h> #include <stdlib.h> int main(void) { char szBuffer[4] = { 0 }; scanf_s("%4c", szBuffer, _countof(szBuffer)); printf("%c%c%c%c\n", szBuffer[0], szBuffer[1], szBuffer[2], szBuffer[3]); return 0; } 위 코드를 똑같이 따라했는데 scanf_s 에 countof 크기 불일치 unsigned 가 나옵니다. 환경 설정도 똑같이 했는데 강사님은 왜 오류가 안나고 저는 나는 걸까요? countof 가 매크로라고 하셨는데 그거랑 무슨 상관이 있는걸까요? 저와 강사님이 쓰는 _countof 함수는 같은거 아닌가요?
클로드 코드 터미널을 쓰다보니, 커서를 쓰는게 쉽지 않은데요, 클로드 코드에서 계속 사용할 경우 말씀하신 스테이징, 로컬 커밋에 저장, 리모트 리포지토리 업로드 등에 대한 용어를 통해 바이브 코딩형태로 얘기해야되는거 맞을까요? 좋은 방법이나 다른 방법이 있는지 궁금하네요
버그로 인해서 claude mcp add --transport http context7 https://mcp.context7.com/mcp --scope user 이걸로 설치하면 mcp.json 파일이 생성 안되는게 맞나요? 그럼 context7 api key는 어디에 셋팅하나요?
강의 내용 중에 궁금한 점이 있어 질문드립니다. #include <stdio.h> int main(void) { char szName[32] = { 0 }; int nAge = 0; printf("나이를 입력하세요. : "); scanf_s("%d", &nAge); printf("이름을 입력하세요 : "); gets_s(szName, sizeof(szName)); return 0; } 처음에는 szName 과 nAge 는 서로 다른 변수이므로 각각 다른 메모리 주소를 갖는다고 생각했습니다. 그래서 scanf_s("%d", &nAge) 를 호출하면 사용자가 입력한 값이 nAge 의 메모리 주소에 저장되고, gets_s(szName, sizeof(szName)) 를 호출하면 입력한 값이 szName 의 메모리 주소에 저장되므로, 두 변수는 서로 다른 메모리 공간을 사용하기 때문에 scanf_s() 에서 입력받은 \n 이 gets_s() 에 영향을 주지 않을 것이라고 생각했습니다. 하지만 실제로는 scanf_s() 로 나이를 입력한 뒤 gets_s() 가 별도의 입력을 받지 않고 바로 종료되었습니다. 강의에서 설명해 주신 내용처럼 scanf_s() 가 남겨 놓은 \n 을 gets_s() 가 읽었기 때문이라고 이해했습니다. 이 부분이 궁금해서 강의를 다시보며 아래와 같이 이해했는데, 제가 이해한 내용이 맞는지 확인 부탁드립니다. - szName 과 nAge 는 서로 다른 메모리 주소를 갖는다. -하지만 scanf_s() , gets_s() 와 같은 입력 함수들은 각 변수의 메모리에서 직접 입력을 받는 것이 아니라, 공통으로 사용하는 stdin 입력 버퍼 에서 데이터를 읽는다. * 이 입력 버퍼는 szName, nAge와 같은 메모리 공간이 아닌 강의 중 강사님이 설명하신 추상화 File의 단 1개의 Buffered I/O로 이해했습니다. -즉, 키보드 입력은 먼저 stdin 의 입력 버퍼에 저장되고, scanf_s() 와 gets_s() 는 이 동일한 입력 버퍼에서 필요한 만큼 데이터를 읽어 각각 nAge 와 szName 에 저장한다. -따라서 scanf_s("%d", &nAge) 는 숫자만 읽고 \n 은 입력 버퍼에 남겨 두며, 이후 gets_s() 가 같은 입력 버퍼에서 남아 있던 \n 을 읽어 바로 종료된다. 제가 위와 같이 이해한 것이 맞는지 확인 부탁드립니다.
나만의 클로드 코드 하네스 강의 커리큘럼 7강 질문입니다. 강의 중에서는 수평 슬라이드가 아니라 수직 슬라이드로 처음부터 이슈를 분해하라고 알려주셨습니다. 미션에서는 수평 슬라이싱으로 먼저 나누고 수직으로 다시 잘라보라고 하셨는데 제가 생각하는 수평 슬라이딩으로 나누고 수직으로 나누라는 말씀이 수평 슬라이딩으로 먼저 나눠야 단위테스트 기준으로 나눌 수 있고 거기서 수직으로 나눠야 단위 테스트 위에 수직 슬라이싱이 더 안정적으로 테스트 할 수 있어서일까요?