maxVal 함수에서 int *arr이 배열을 가져옴으로써 arr은 1의 주소를 갖게되는데 int max = maxVal(arr, size-1); 에서 int max = maxVal(1의주소, 4);가 되면 그다음 maxVal( ,3); 여기에서 앞 부분에 뭐가 들어가게 되는 건가요? 그리고 어떻게 배열이 계속 들어가게 되나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. https://cafe.naver.com/f-e/cafes/31023030/menus/15?t=1751377938438 해당 주소로 접속했을 때, 강의와 다르게, iframe이 확인 안되는데요... 네이버 카페 html 구조가 바뀐걸까요... 특정 게시글 하나를 클릭해서 로드 되면, iframe ID는 보여요. 5개씩 버튼을 먼저클릭하고, 50개씩 버튼을 클릭하는 방법으로 해야될까요? driver.find_element(By.CSS_SELECTOR, "#menuLink15").click() # 50개씩 클릭 driver.find_element(By.CSS_SELECTOR, ".option_list > li:nth-of-type(7) button").click()
스프링 시큐리티를 적용하고 나서 modify가 계속 /member/signin으로 리다이렉트 되는 현상이 발견되었는데, 원인을 파악해보니 인터셉터 클래스 문제였습니다. (기존 인터셉터 클래스에선 session을 기반으로 로그인 상태여부를 확인하는데, Spring Security를 사용하고 나선, session이 아닌 SecurityContext에 로그인 정보를 보관하니 서로 충돌을 일으켜 계쏙 signin으로 리다이렉트 되는거 같습니다.) 혹시 이 부분이 맞는지 확인 부탁드리며, 제가 쓴 내용이 맞다면, 강의 내용중에 이부분을 짚어주셨으면 합니다.
int p = &n; 이면 변수 n의 주소를 p의 값에 넣는 것이라서 p는 주소값이 되고 *p는 p가 가리키고 있는 주소의 값 즉 n의 값이 되는데 int array[] = {10,20,30,40,50}; int *ptr = array;인 상황에서 *ptr은 배열의 첫번째 값을 가리키는 것이면 ptr은 무엇을 갖는 건가요? array의 첫번째 값의 주소를 갖게되나요?
실습 - Vision API 활용 방법 이해에서 아래와 같은 코드를 실행하게 되면 url = "https://upload.wikimedia.org/wikipedia/commons/thumb/d/dd/Gfp-wisconsin-madison-the-nature-boardwalk.jpg/2560px-Gfp-wisconsin-madison-the-nature-boardwalk.jpg" response = client.chat.completions.create( model=Model, messages=[ { "role": "user", "content": [ {"type": "text", "text": "이 이미지의 내용을 설명해줘. 한국어로 설명해줘."}, {"type": "image_url", "image_url": {"url": url}}, ] } ], max_tokens=300, ) response.to_dict() 결과가 아래와 같이 나오는데 {'id': 'chatcmpl-BnxBjLVQUG5mlJJA9i9YhADGfCe2u', 'choices': [{'finish_reason': 'stop', 'index': 0, 'logprobs': None, 'message': {'content': '이미지는 푸른 풀밭과 하늘이 넓게 펼쳐진 풍경을 보여주고 있습니다. 중앙에는 나무 판자로 된 산책로가 놓여 있어 풀밭을 따라 걷는 길처럼 보입니다. 하늘은 맑고 파란색으로 구름이 흩어져 있으며, 주변에는 나무와 덤불이 자생하고 있습니다. 전체적으로 자연의 평화롭고 고요한 분위기를 느낄 수 있는 장면입니다.', 'refusal': None, 'role': 'assistant', 'annotations': []}}], 'created': 1751245291, 'model': 'gpt-4o-mini-2024-07-18', 'object': 'chat.completion', 'service_tier': 'default', 'system_fingerprint': 'fp_62a23a81ef', 'usage': {'completion_tokens': 108, 'prompt_tokens': 36857, 'total_tokens': 36965, 'completion_tokens_details': {'accepted_prediction_tokens': 0, 'audio_tokens': 0, 'reasoning_tokens': 0, 'rejected_prediction_tokens': 0}, 'prompt_tokens_details': {'audio_tokens': 0, 'cached_tokens': 0}}} max_tokens으로 준 인자값은 completion_token 의 상한 limit를 정하는건가요? prompt_tokens 의 값이 강의의 내용과 비교해서 너무 큰거 같아서 질문을 드리는 겁니다.
강의 열심히 듣고 있습니다. 다름이 아니라, DTO 관련 의구심이 들어서 질문 올립니다. 선생님께선 modifyConfirm 일때 dto의 pw 값을 encode된 값으로 변경하셔서 entity로 넣으셨는데, String encodedPW = passwordEncoder.encode(memberDTO.getPw()); memberDTO.setPw(encodedPW) findedMemberEntity.setMemPw(memberDTO.getPw()); 위의 방법대로 하면, dto값이 변경이 되어 "단순 전달 객체"를 위배할 수 있으며, 간결성과 가독성이 떨어지는게 아닌가 싶어서요 아래와 같이 리펙토링 하면 조금 더 간결하게 되지 않을까요? if (optionalMember.isPresent()) { MemberEntity findedMemberEntity = optionalMember.get(); findedMemberEntity.setMemPw(passwordEncoder.encode(memberDTO.getPw())); ~~ return MODIFY_SUCCESS; }
int arr[] = {10, 20, 30,40,50}; int *p = arr; printf("%d", *p++); printf("%d", (*p)++); printf("%d", ++(*p)); printf("%d", *++p); printf("%d", ++*p); 다음과같이 포인터가 존재한다면 어떻게 출력이 되는지와 그 이유를 알 수 있을까요?