손정아
C언어
scanf() 함수
꼭 외울 것!
문제
JAVA
컴파일타임 에러 (Compile time Error)
런타임 에러 (Runtime Exception)
문제
김치훈
C언어
scanf()
포인터와 배열의 다양한 표현
Java
상속
implements 와 extends
형 변환
컴파일에러와 런타임에러
이승훈
C언어 포인터와 배열
scanf 할 때 왜 변수의 주소를 매개변수로 넘기는가?
•
사용자가 키보드로 입력한 정수를 input에 넣어주는 일을 해주는 scanf 는 일종의 외부 대행 업체라고 볼 수 있다.
•
scanf가 우리에게 물어본다. 고객에게 입력받은 값을 어디에 넣어 줄까요?
•
이 때 우리는 변수의 위치를 넘겨야 한다.
•
scanf("%d", &input); : input은 단지 그냥 수이다. 수가 아닌 주소 값을 넘겨주어야 한다
고객에게 숫자를 10개 입력 받아서 배열에 넣기 (배열 문법 사용 금지)
소스 코드
결과 확인
배열을 훼손하는 change 함수를 만들기 (배열 포인터)
소스 코드
결과 확인
자바 클래스와 객체
상위 타입 리모콘을 사용하는게 좋다
•
상위 타입 리모콘을 사용하는 게 좋다
•
필요할 때만 캐스팅해서 하위 타입 리모콘을 사용하는 것이 좋다.
•
표준Tv[] arr = new 표준Tv[3]; ⇒ 표준Tv 리모콘 3개 넣을 수 있는 배열 객체 생성
•
리모콘에 버튼을 추가하는 것은 위험하다.
◦
기능적으로는 좋아진다
◦
될 수도 있고 안 될 수도 있다
•
리모콘에 버튼을 빼는 것
◦
기능적으로는 불편해진다
◦
무조건적으로 안전하다
•
자바에서는 안전한 것에 대해서는 자동 형 변환이 가능하다.
•
자바에서는 안전하지 않을 수 있는 것에 대해서는 개발자의 사인이 필요하다. => 수동 형 변환
실습 코드 1
전사가 들고 있는 무기에 의해서 서로 다른 공격 형태를 출력
소스 코드
결과 확인