inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

안녕하세요! C/C++/C# 윈도우 개발 희망하는 컴공과 2학년 입니다.

미해결

독하게 시작하는 C 프로그래밍

제 계획은 선생님의 CS 강의 [컴퓨터구조, 운영체제, 네트워크] C/C++ 강의 윈도우 시스템 프로그래밍 강의 를 공부하고, 그 이후에 C# 과 .net 프레임워크를 공부할 계획입니다. 이렇게 계획을 세운 이유는 1학년 때 자바 수업을 들으면서 C언어를 독학했는데, OS나 컴퓨터 원리에 대한 내용의 중요성을 너무 절실하게 깨달았습니다. 성격상 자바를 배우면서도 클래스가 힙메모리 영역에 생성되고 이것은 C언어의 구조체 안에 또 다른 포인터를 넣어 이중포인터로 구현이 가능하겠구나 이런 생각이 들면서 C가 더욱 재밌고 이쪽 계열로 가고싶다고 생각 했습니다. 경쟁력도 더욱 있을거라고 생각했구요 ! 서론이 길었습니다. 요약하자면 제 계획은 C#을 이용한 윈도우 프로그램 개발을 하고싶지만, 이에 대한 기반으로 C/C++ 윈도우 시스템 및 컴퓨터 구조에 대한 이해를 기반으로 공부하고 싶다. 제가 생각한 공부 계획이 배보다 배꼽이 더 큰건 아닌지 궁금해서 질문 드렸습니다 감사합니다! 아직 제가 깊게 학습을 하지 않은상태라 드린 말씀이지만, c#c++ 계열의 백엔드 개발or 윈도우 개발쪽으로 가려면 제가 생각한 것이 맞는지 궁금합니다 !

  • c
  • 컴퓨터-구조
  • assembly-language
  • vc++
Pass 댓글 1 좋아요 1 조회수 401

강사님 스레드 관련 질문 드립니다.

해결됨

Windows 시스템 프로그래밍 - 기본

for(int i = 0; i < n ; ++i) 문 안에 스레드 생성시 매개변수로 &i를 주고 스레드를 생성할 경우 i 값이 변경되어 스레드에 +1 된 값이 전달되는 현상을 방지하려면 어떻게 해야 할 까요? 아마도 주소값을 주기 때문에 스레드 생성후에 i값이 변경되면서 발생한 거 같은데 해결 방법을 모르겠습니다.

  • c
  • system-programming
  • vc++
내일은 한걸음 더 나아갈거야 댓글 1 좋아요 0 조회수 240

부끄러운 질문 하나 하겠습니다...

미해결

김영한의 실전 자바 - 중급 1편

복습방법을 잘 모르겠습니다.. 두가지 질문을 드려봐요. 1. 강의를 전부 다시보는건 너무 시간이 오래걸릴것같고 교재랑 코드만 보면 지식의 공백이 생길것같습니다... 2. 학습적으로 제대로 이해하고 응용할 수준까지 진행하고 싶어도 주입식교육을 받은 학생이라 그런지 다양한 문제를 해결하지 않으면 그 수준까지 도달을 못하는 편입니다. 그래서 다양한 예제를 풀어볼 수있는 방법이 없을까요 ? 목차마다 한 두문제가 있는데 반복해도 나중에 다른 문제를 만낫을때 해결하지 못해서 고민입니다.. 그런 문제를 아주 가끔씩 만나기도 하고요... 뭔가 몇달째 코딩을 하면서 이것때문에 남는 지식이 얼마 없는것 같아서 딜레마에 빠졌습니다.. 좋은 방법이 없을까요?ㅠㅠ

  • java
  • 객체지향
송민석 댓글 1 좋아요 3 조회수 503

Backpressure Example 코드 질문드립니다

미해결

Kevin의 알기 쉬운 Spring Reactive Web Applications: Reactor 1부

기존 예제 (sleep 시간이 5L인 경우)에선 Exception이 발생하는 것을 확인했습니다. 하지만 sleep 시간을 더 늘리니까 Erorr가 발생하지않았습니다. 제 예상대로라면 버퍼가 더 빨리 차기 때문에 에러가 발생해야하는데, 동작이 이해가 되지 않습니다. public class BackpressureStrategyErrorExample { public static void main(String[] args) { Flux .interval(Duration.ofMillis(1L)) .onBackpressureError() .doOnNext(Logger::doOnNext) .publishOn(Schedulers.parallel()) .subscribe(data -> { // 왜 50L, 500L로 하면 에러가 발생하지 않을까? TimeUtils.sleep(500L); Logger.onNext(data); }, error -> Logger.onError(error)); TimeUtils.sleep(5000L); } }

  • java
  • spring
  • project-reactor
  • webflux
drew 댓글 2 좋아요 0 조회수 282

패키지 생성

미해결

김영한의 실전 자바 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 여기에 질문 내용을 남겨주세요. 선생님께서 패키지를 생성하실 때 com.helloshop이라고 생성하시면 인텔리제이에서 자동으로 com이라는 패키지를 만들고 그 밑에 helloshop이라는 패키지를 만들어 주던데 저는 그냥 com.helloshop이라는 패키지 생성됩니다. 어떤 세팅을 바꿔야 하는지 알고 싶습니다!

  • java
  • 객체지향
송현수 댓글 2 좋아요 4 조회수 547

자료 자체와 정렬된 인덱스 분리 강의에서 질문

해결됨

독하게 C를 배운 사람을 위한 선형 자료구조

강의 9분에 등장하는 MakeIndexAge 함수에 관한 질문입니다. MakeIndexAge 함수가 원래 자료구조의 손상을 가하지 않기위해 노드들의 주소들을 담은 배열을 만들고 정렬한 후, 반환하는 함수라는 것은 알고있습니다. 그런데 MakeIndexAge 함수의 반환형이 왜 USERDATA**가 아니라 void**인지 이해가 가질 않습니다. USERDATA**로 반환형을 잡으면 안되나요?

  • c
  • 코딩-테스트
  • 알고리즘
  • vc++
davidkjcy 댓글 2 좋아요 0 조회수 257

강사님 메뉴얼 중 이것도 궁금해서 여쭤봅니다.

해결됨

Windows 시스템 프로그래밍 - 기본

TerminateProcess가 ExitProcess 대신 사용되는 경우 DLL(동적 연결 라이브러리)에서 유지 관리하는 글로벌 데이터의 상태가 손상될 수 있다 . ====> 어떤 내용인지 설명해 주실 수 있는지요?

  • c
  • system-programming
  • vc++
내일은 한걸음 더 나아갈거야 댓글 2 좋아요 0 조회수 230

강사님 프로세스의 IPC에서 굳이 MUTEX 가 필요할까 하는 생각이 듭니다.

미해결

Windows 시스템 프로그래밍 - 기본

강사님이 주신 예제의 뮤텍스를 보면 읽기/쓰기 동작에서는 쓰기가 먼저 일어나고 읽기가 일어나야 하기 때문에 이를 위해서는 뮤텍스 단독으로는 이러한 처리가 불가능하다고 보여지며 반드시 이벤트와 결합되어야 이러한 동작이 가능할 거 같이 보여집니다. 아울러 이벤트를 써서 구현하면 굳이 뮤텍스는 필요 없을 거 같다는 생각이 드는데 강사님 의견 부탁드립니다.

  • c
  • system-programming
  • vc++
내일은 한걸음 더 나아갈거야 댓글 4 좋아요 1 조회수 395

정수형태 변수 메모리상 확인방법 및 단순 대입 관련 문의

해결됨

독하게 시작하는 C 프로그래밍

문의사항 x = 0; 실행시 x에 해당하는 주소에 데이터 저장이 확인되지 않습니다. 일전 문자열 저장시 메모리 상에서 확인 가능했음 (ex) char szName[32] ={ 0 };) x = ninput 수행시 독하게 시작하는 프로그래밍 언어 강사님 저서를 보고 확인했을때 주소에 값이 변경되는 것으로 판단되는데 맞을까요? 다른 언어에서 복사의 의미는 값의 주소를 공유한다고 배웠던것 같아 문의드립니다. 감사합니다.

  • c
  • 컴퓨터-구조
  • assembly-language
  • c언어대입연산자복사의의미
정상훈 댓글 1 좋아요 0 조회수 270

강사님 ExitProcess 와 TerminateProcess 에 대해 질문드립니다.

해결됨

Windows 시스템 프로그래밍 - 기본

ExitProcess 관련 메뉴얼에 프로세스에서 종료된 스레드 중 하나에 잠금이 있고 로드된 DLL 중 하나의 DLL 분리 코드가 동일한 잠금을 획득하려고 하면 ExitProcess 를 호출하면 교착 상태가 발생한다. 라고 되어 있는데 중요한 애기 인거 같은데 무슨 애기인지 알 수 있는지 해서요? DLL에서 ExitProcess 를 호출하면 예기치 않은 애플리케이션 또는 시스템 오류가 발생할 수 있다. DLL을 로드할 애플리케이션 또는 시스템 구성 요소와 이 컨텍스트에서 ExitProcess 를 호출하는 것이 안전한 경우에만 DLL에서 ExitProcess 를 호출해야 한다. 라고 되어 있는데 설명 부탁드릴 수 있느지요? 아울러 ExitProcess 와 TerminateProcess 의 경우 프로그램이 할당한 메모리 등 자원 및 오픈한 handle 에 대한 처리는 어떻게 되는지요? 부탁드려 봅니다.

  • c
  • system-programming
  • vc++
내일은 한걸음 더 나아갈거야 댓글 2 좋아요 0 조회수 387

공부방법

해결됨

[쥬신게임아카데미 버거쌤] 완전 초보자를 위한 게임 C++

클래스 전까진 신나게(?) 진행하다가, 동적할당, 구조체(포인터 변수사용),클래스..진입하면서,복습이 본 공부보다 더 오래, 심지어 오락가락하는 중입니다. 전 강의가 20강이라 짧긴 하고,입문용이긴 한데,.. 갖고있는 c++책의 예제를 보니, 연습용으로 풀긴,아는거보다 모르는게 좀더 많은거같고.. 예제를 만들어 복습을 하는 방법밖엔 없지만, .. 공부방향을 가이드 해주실수있나요? 글고, 입문다음엔 기초이거나,중급일거같은데. 언제 나오나요?

  • c
  • c++
eunjeong seo 댓글 2 좋아요 0 조회수 481

N + 1 쿼리 횟수

해결됨

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

안녕하세요 강의 너무 잘 듣고 있습니다. "간단한 주문 조회 V2: 엔티티를 DTO로 변환" 강의를 듣던 중 궁금한 점이 생겨 질문 드립니다. Order 엔티티를 SimpleOrderDto 로 변환하는 과정에서 아래 조건으로 인해 샘플 데이터 2개 기준 총 5(1 + 2 + 2)번의 쿼리가 날아간다고 이해했습니다. order -> member 지연 로딩 조회 N번 order -> delivery 지연 로딩 조회 N번 근데 저는 order -> delivery 쿼리 이후에 order 를 찾는 쿼리가 한번 더 날아가는 것처럼 보입니다. 총 7번의 쿼리가 발생하는 것 같은데 무엇 때문인지 설명해주실 수 있을까요? 코드와 콘솔 로그는 아래 첨부했습니다. 감사합니다. // Order 엔티티 @Id @GeneratedValue @Column(name = "order_id") private Long id; @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "member_id") private Member member; @OneToMany(mappedBy = "order", cascade = CascadeType.ALL) private List<OrderItem> orderItems = new ArrayList<>(); @OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL) @JoinColumn(name = "delivery_id") private Delivery delivery; private LocalDateTime orderDate; @Enumerated(EnumType.STRING) private OrderStatus status; // 주문상태 // Delivery 엔티티 @Id @GeneratedValue @Column(name = "delivery_id") private Long id; @JsonIgnore @OneToOne(mappedBy = "delivery", fetch = FetchType.LAZY) private Order order; @Embedded private Address address; @Enumerated(EnumType.STRING) private DeliveryStatus status; // READY, COMP // OrderSimpleApiController @GetMapping("/api/v2/simple-orders") public List<SimpleOrderDTO> ordersV2() { List<Order> orders = orderRepository.findAll(new OrderSearch()); return orders.stream() .map(SimpleOrderDTO::new) .toList(); } @Data static class SimpleOrderDTO { private Long orderId; private String name; private LocalDateTime orderDate; private OrderStatus orderStatus; private Address address; public SimpleOrderDTO(Order order) { this.orderId = order.getId(); this.name = order.getMember().getName(); // Lazy 초기화 this.orderDate = order.getOrderDate(); this.orderStatus = order.getStatus(); this.address = order.getDelivery().getAddress(); // Lazy 초기화 } } 2024-04-09T13:27:53.982+09:00 DEBUG 12424 --- [nio-8080-exec-2] org.hibernate.SQL : select o1_0.order_id, o1_0.delivery_id, o1_0.member_id, o1_0.order_date, o1_0.status from orders o1_0 join member m1_0 on m1_0.member_id=o1_0.member_id 2024-04-09T13:27:53.984+09:00 INFO 12424 --- [nio-8080-exec-2] p6spy : 1712636873984|0|statement|connection 7|url jdbc:h2:tcp://localhost/~/jpashop_v2|select o1_0.order_id,o1_0.delivery_id,o1_0.member_id,o1_0.order_date,o1_0.status from orders o1_0 join member m1_0 on m1_0.member_id=o1_0.member_id|select o1_0.order_id,o1_0.delivery_id,o1_0.member_id,o1_0.order_date,o1_0.status from orders o1_0 join member m1_0 on m1_0.member_id=o1_0.member_id 2024-04-09T13:27:54.005+09:00 DEBUG 12424 --- [nio-8080-exec-2] org.hibernate.SQL : select m1_0.member_id, m1_0.city, m1_0.street, m1_0.zipcode, m1_0.name from member m1_0 where m1_0.member_id=? 2024-04-09T13:27:54.007+09:00 INFO 12424 --- [nio-8080-exec-2] p6spy : 1712636874007|0|statement|connection 7|url jdbc:h2:tcp://localhost/~/jpashop_v2|select m1_0.member_id,m1_0.city,m1_0.street,m1_0.zipcode,m1_0.name from member m1_0 where m1_0.member_id=?|select m1_0.member_id,m1_0.city,m1_0.street,m1_0.zipcode,m1_0.name from member m1_0 where m1_0.member_id=1 2024-04-09T13:27:54.012+09:00 DEBUG 12424 --- [nio-8080-exec-2] org.hibernate.SQL : select d1_0.delivery_id, d1_0.city, d1_0.street, d1_0.zipcode, d1_0.status from delivery d1_0 where d1_0.delivery_id=? 2024-04-09T13:27:54.013+09:00 INFO 12424 --- [nio-8080-exec-2] p6spy : 1712636874013|0|statement|connection 7|url jdbc:h2:tcp://localhost/~/jpashop_v2|select d1_0.delivery_id,d1_0.city,d1_0.street,d1_0.zipcode,d1_0.status from delivery d1_0 where d1_0.delivery_id=?|select d1_0.delivery_id,d1_0.city,d1_0.street,d1_0.zipcode,d1_0.status from delivery d1_0 where d1_0.delivery_id=1 2024-04-09T13:27:54.016+09:00 DEBUG 12424 --- [nio-8080-exec-2] org.hibernate.SQL : select o1_0.order_id, o1_0.delivery_id, o1_0.member_id, o1_0.order_date, o1_0.status from orders o1_0 where o1_0.delivery_id=? 2024-04-09T13:27:54.016+09:00 INFO 12424 --- [nio-8080-exec-2] p6spy : 1712636874016|0|statement|connection 7|url jdbc:h2:tcp://localhost/~/jpashop_v2|select o1_0.order_id,o1_0.delivery_id,o1_0.member_id,o1_0.order_date,o1_0.status from orders o1_0 where o1_0.delivery_id=?|select o1_0.order_id,o1_0.delivery_id,o1_0.member_id,o1_0.order_date,o1_0.status from orders o1_0 where o1_0.delivery_id=1 2024-04-09T13:27:54.018+09:00 DEBUG 12424 --- [nio-8080-exec-2] org.hibernate.SQL : select m1_0.member_id, m1_0.city, m1_0.street, m1_0.zipcode, m1_0.name from member m1_0 where m1_0.member_id=? 2024-04-09T13:27:54.019+09:00 INFO 12424 --- [nio-8080-exec-2] p6spy : 1712636874019|0|statement|connection 7|url jdbc:h2:tcp://localhost/~/jpashop_v2|select m1_0.member_id,m1_0.city,m1_0.street,m1_0.zipcode,m1_0.name from member m1_0 where m1_0.member_id=?|select m1_0.member_id,m1_0.city,m1_0.street,m1_0.zipcode,m1_0.name from member m1_0 where m1_0.member_id=2 2024-04-09T13:27:54.020+09:00 DEBUG 12424 --- [nio-8080-exec-2] org.hibernate.SQL : select d1_0.delivery_id, d1_0.city, d1_0.street, d1_0.zipcode, d1_0.status from delivery d1_0 where d1_0.delivery_id=? 2024-04-09T13:27:54.020+09:00 INFO 12424 --- [nio-8080-exec-2] p6spy : 1712636874020|0|statement|connection 7|url jdbc:h2:tcp://localhost/~/jpashop_v2|select d1_0.delivery_id,d1_0.city,d1_0.street,d1_0.zipcode,d1_0.status from delivery d1_0 where d1_0.delivery_id=?|select d1_0.delivery_id,d1_0.city,d1_0.street,d1_0.zipcode,d1_0.status from delivery d1_0 where d1_0.delivery_id=2 2024-04-09T13:27:54.021+09:00 DEBUG 12424 --- [nio-8080-exec-2] org.hibernate.SQL : select o1_0.order_id, o1_0.delivery_id, o1_0.member_id, o1_0.order_date, o1_0.status from orders o1_0 where o1_0.delivery_id=? 2024-04-09T13:27:54.021+09:00 INFO 12424 --- [nio-8080-exec-2] p6spy : 1712636874021|0|statement|connection 7|url jdbc:h2:tcp://localhost/~/jpashop_v2|select o1_0.order_id,o1_0.delivery_id,o1_0.member_id,o1_0.order_date,o1_0.status from orders o1_0 where o1_0.delivery_id=?|select o1_0.order_id,o1_0.delivery_id,o1_0.member_id,o1_0.order_date,o1_0.status from orders o1_0 where o1_0.delivery_id=2

  • java
  • spring
  • spring-boot
  • jpa
이진혁 댓글 1 좋아요 2 조회수 223

MeberServiceIntegrationTest 회원가입 실행 오류 질문드립니다.

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요, 고생많으십니다. MeberServiceIntegrationTest 회원가입 실행 중 오류 발생으로 db에 저장되지 않아 질문드립니다. 아래와 같은 오류가 발생하며, WARNING: A Java agent has been loaded dynamically (/Users/jisung/.gradle/caches/modules-2/files-2.1/net.bytebuddy/byte-buddy-agent/1.14.12/be4984cb6fd1ef1d11f218a648889dfda44b8a15/byte-buddy-agent-1.14.12.jar) WARNING: If a serviceability tool is in use, please run with -XX:+EnableDynamicAgentLoading to hide this warning WARNING: If a serviceability tool is not in use, please run with -Djdk.instrument.traceUsage for more information WARNING: Dynamic loading of agents will be disallowed by default in a future release OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended 커뮤니티 질문 목록을 보며 gradle 자버 버젼도 확인하고 인텔리제이 버젼도 확인하여 자바 17로 변경 하였지만 그대로 오류가 발생하였습니다. 로컬 문제인가 생각이 들어 로컬 자바도 17로 변경 하였지만 똑같은 오류가 발생하여 질문 드립니다. 아래는 파일 공유 링크입니다. https://drive.google.com/drive/folders/1_Jhjekr157fqxOS2_QQ8wcULOdMo2qVQ?usp=sharing

  • java
  • spring
  • mvc
  • spring-boot
댓글 2 좋아요 0 조회수 618

spring Security 구현중 Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception 에러 발생

미해결

https://github.com/myungkeun02/spring_blog_3 공부하고있는 코드입니다. 제목 그대로 포스트맨으로 테스트중에 Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception 라는 에러가 발생합니다. 구글링해서 문제가 발생할만한 부분을 모두 찾아 보았지만 해결이 안되어 글 올려봅니다. 해결해주시는분께 아메리카노 쏩니다

  • spring
  • error
  • security
  • servlet
  • execption
  • java
명근 최 댓글 1 좋아요 0 조회수 554

강의 3분 50초 두번째 예제코드 질문드립니다.

해결됨

윤파고의 정보처리기사 DB/프로그래밍 All-In-One

int a, hap = 0; for(a=0; a<5; a++, hap += a) ; 초기 hap = 0 a = 0일 때, hap = 0+0 => hap = 0 a = 1일 때, hap = 0 + 1 => hap = 1 a = 2일 때, hap = 1 + 2 => hap = 3 a = 3일 때, hap = 3 + 3 => hap = 6 a = 4일 때, hap = 6 + 4 => hap = 10 10 아닌가요? 결과가 동일하게 15라고 되어있는데 어떻게 15가 되는 것인지 이해가 안됩니다...ㅜㅜ 혹시 a<=5 의 오타일까요..?

  • python
  • java
  • c
  • dbms/rdbms
  • 정보처리기사
윤지영 댓글 1 좋아요 0 조회수 345

protected 사용 이유

해결됨

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

안녕하세요! 해당 강의에서 기본 생성자를 추가해주실 때, public이 아니라 protected를 사용하셨는데, 그 이유가 무엇인가요? 혹시라도 다른 곳에서 기본생성자를 사용하지 못하도록 하게 하기 위함인가요? 제가 자바가 안익숙해서 그런지, 이러한 접근 제어자를 쓰는 것이나, static, final 키워드를 언제 쓰거나 안써야 하는지에 대한 감이 별로 없어서 구분을 잘 못하는데, 이러한 실력은 어떤 경험을 더 쌓아야 할지.. 아니면 어떤 키워드를 어떻게 공부해야 더이상 안 헷갈리고 확실하게 알 수 있을지 궁금합니다...! 항상 친절한 강의 감사드립니다.

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
iwbm312 댓글 2 좋아요 2 조회수 823

[]

미해결

홍정모의 따라하며 배우는 C언어

daily_temperatures 뒤에 붙어있는 []가 정확히 무슨 뜻인지 모르겠습니다. 어쩔 땐 int[] 이런 형식도 본 것 같은데 그것도 무슨 뜻인지 잘 모르겠습니다. int 사이즈 메모리 몇 개가 무슨 뜻인거죠? 4바이트짜리 메모리를 뒤에 써있는 수만큼 받는다는 건가요? 그리고 마지막에 stock_prices_history[0]이라고 되어 있는데 항상 0이 첫 번째 주소인가요?

  • c
양주원 댓글 1 좋아요 1 조회수 198

사실상 final 변수에 관하여 (값의 변경에 관한 질문입니다)

해결됨

김영한의 실전 자바 - 중급 1편

========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 강의를 보던 중 궁금한 점이 생겼습니다. 사실상 final 변수는 (final 키워드를 넣은 것 처럼) 한 번 값이 설정되면 그 후에 값을 변경하지 못합니다. => 질문에 대한 핵심은 다음과 같습니다. 그렇다면 인스턴스를 생성하기 전에 지역 변수의 값을 변경하는 건 괜찮지 않을까? 근데 왜 안될까? => 그렇게 생각한 이유는 다음과 같습니다. 지역 변수를 캡쳐하는 시점은 (강의 속 LocalPrinter) 지역 클래스의 인스턴스 생성을 시도 한 후 입니다. (제 생각에,,) 코드는 위에서 아래로 읽기 때문에 Printer printer = new LocalPrinter(); 가 적혀져 있기 전에는 지역 변수의 값을 변경해도 되지 않을까? 하는 이유입니다.

  • java
  • 객체지향
30po_bil 댓글 1 좋아요 0 조회수 525

0.1F + 0.1F 에서 오차가 나는 이유

해결됨

독하게 시작하는 C 프로그래밍

부동소수점 오차 관련하여 질문이 있습니다. 부동소수점 방식에서 순환소수를 표현할 때는 오차가 난다는 것을 이해하였습니다. 하지만 0.1은 순환소수가 아니어서 부동소수점 방식으로도 정확하게 표현할 수 있는데, 강의에서처럼 오차가 나는 이유가 무엇인가요?

  • c
  • 부동소수점
choimk0512 댓글 1 좋아요 0 조회수 306

java scanner 오류

미해결

txt파일에는 아래와 같이 저장되어 있습니다. 점수가 가장 높은 학생의 이름을 출력해야하고 점수가 동일할 경우 모두 출력하는 프로그램입니다. 김일번 64 김이번 83 김삼번 26 김사번 36 김오번 78 김육번 54 김칠번 60 김팔번 85 김구번 45 김십번 85 프로그램을 실행했을 때 Exception in thread "main" java.util.InputMismatchException at java.base/java.util.Scanner.throwFor ( Scanner.java:94 7 ) at java.base /java.util.Scanner.nex t ( Scanner.java:160 2 ) at java.base/java.util.Scanner.nextInt ( Scanner.java:226 7 ) at java.base/java.util.Scanner.nextInt ( Scanner.java:222 1 ) 이렇게 오류가 발생합니다. 해결방법 아시는 분 가르쳐주세요!!ㅜㅜ package kh; import java.io.*; import java.util.Scanner; class Student { //int id; String name; int grade; Student(String name, int grade) { //this.id=id; this.name=name; this.grade=grade; } } class StudentTable{ Student[] st; StudentTable(int size) { st=new Student[size]; } void maxStudent() { int maxGrade=0; for(Student student : st) { if(student.grade > maxGrade) { maxGrade = student.grade; } } System.out.println("최고 점수를 가진 학생:"); for(Student student : st) { if(student.grade == maxGrade) { System.out.println(" " + student.name + " " + student.grade); } } } } public class homework05{ public static void main(String[] args) { StudentTable stable; try { FileInputStream fin=new FileInputStream("C:\\Users\\user\\Desktop\\student_score.txt"); Scanner scanner = new Scanner(fin); int size=scanner.nextInt(); stable=new StudentTable(size); for(int i=0; i<stable.st.length; i++) { //int id=scanner.nextInt(); String name=scanner.next(); int grade=scanner.nextInt(); stable.st[i]=new Student(name,grade); System.out.println(" "+name+" "+grade); } scanner.close(); stable.maxStudent(); } catch(FileNotFoundException e) { System.out.println("file not exist"); } } }

  • java
dkfma0799 댓글 1 좋아요 0 조회수 276

인기 태그

인프런 TOP Writers

주간 인기글