• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

매개변수에 int 지정을 하지 않으면 어떻게 되나요?

21.07.25 14:34 작성 조회수 154

0

안녕하세요. 항상 좋은 강의 감사드립니다.

이번 수업에서 Add 함수를 만들 때 반환값을 정수로 정하기 위해서 int를 넣은 부분까지는 이해가 됐는데요

매개변수에도 int를 주셨잖아요

만약 int를 지정하지 않으면 함수가 a, b가 숫자(정수)더라도 정수라고 인식하지 못해서 오류가 나나요?

아니면 단순히 정수라는 것을 좀 더 명확하게 표현하기 위해서 int를 넣은 것인가요?

그리고 아래와 같이 Console.ReadLine을 통해서 a, b를 입력받도록 했는데 '실행할 테스트 파일이 없다'는 오류가 출력되는데 이유가 있을까요?

답변 1

답변을 작성해보세요.

0

문법적으로 잘못된 코드를 작성해서,
빌드가 통과가 되지 않아 실행 또한 되지 않는겁니다.


함수를 위와 같이 정의했으면,
Add를 호출할 땐 반드시 정수 2개를 같이 건내줘야 합니다.
힌트가 아니라 강제사항에 가깝습니다.

그러나 실제 호출하실 땐, 인자 없이 호출했으니 여기서 1차적인 문법적 에러가 있습니다.
C++, C# 같은 경우에는 타입에 민감해서
컴파일 단계에서 잘못 만들면 아예 빌드가 되지 않습니다. (Python, Javascript와는 다르게)

그 다음 Console.ReadLine()의 결과물을 a, b로 덮어쓰게 했으나
Console.ReadLine()의 결과물은 string 타입이라


int.Parse 등을 사용해 정수로 변환해줘야 합니다.
그러나 함수 자체에서 a, b를 인자로 받아줬는데,
이를 콘솔 입력값으로 덮어써서 사용하는 것은 조금 이상한 상황일 것 같고

이런 식으로 만드는게 합리적일 것입니다.

yunahyeri님의 프로필

yunahyeri

질문자

2021.07.25

상세한 답변 정말 감사드립니다!! 아직 모르는 것이 많아서 이렇게 하면 어떨까? 하고 아는 선에서 해봐도 틀린 부분이 정말 많네요. 하나하나 예시를 들어서 답변 주시다니 감동이에요... ㅠ_ㅠ

Console.ReadLine을 쓰면 string으로 값을 받게 된다는 건 몰랐는데 잘 기억해두겠습니다.

올려주신 예제 따라서 만들어보고 공부도 더 열심히 하겠습니다! ^____^

좋은 하루 보내세요!! ^_____^

강의 자체 목적이 신입 프로그래머 교육 용도로 만든 것이라,
초반 부분은 휙 지나가고 좀 많이 어려운게 당연합니다.
별도의 C# 입문서랑 같이 보시는걸 권장 드립니다.
그럼 힘내세요