int main(){}으로 시작하는 함수에서 어떻게 부동소수점형이 반환이 되어도 문법적 문제가 되지 않는것인지 궁금해요.

오병희 0 평판 포인트
2024-03-20T03:22:01.5133333+00:00

Hello, I used microsoft visual studio to operate C programming, and This is what I write.

#include<stdio.h>

int main(){

float pi= 3.14;

printf("pi is %f \n",pi);

return 0;

}

int는 정수형 함수를 나타내는 것으로 알고 있고, float는 부동소수점형을 함수인 것으로 알고 있습니다.

int main의 경우 정수형을 반환하고자 하는 main 함수일텐데, 어떻게 부동소수점형인 3.14를 반환할 수 있는지가 궁금합니다.

혹시 여기에 코딩 질문을 올리는 것이 부적절하다면 죄송합니다. 코딩 질문 관련한 다른 사이트가 있다면 추천해 주실 수 있는지도 궁금합니다.

Visual Studio
Visual Studio
Windows, 웹 및 모바일 디바이스용 애플리케이션을 빌드하기 위한 통합 개발 도구 제품군입니다.
질문 14개
댓글 0개 설명 없음
투표 {count}개

답변 1개

정렬 기준: 가장 유용함
  1. Wenying Lu-MSFT 1,675 평판 포인트 Microsoft 공급업체
    2024-03-20T09:08:19.6233333+00:00

    안녕하세요 @오병희 님,

    Microsoft Q&A 포럼에 게시해 주셔서 감사합니다.

    Main은 int 유형만 반환하거나 반환할 수 없다고 규정합니다. 따라서 float는 반환할 수 없습니다.

    아래는 모든 main 함수 형식입니다, 참조 바랍니다.

    int main(void);
    int main();
     
    int main(int argc, char **argv);
    int main(int argc, char *argv[]);
    int main(int argc, char **argv, char **env);
     
    // more specifically in C
    // NOT according to the ISO C standard 5.1.2.2.1
    // BUT in embedded programming depending on the µC, this form is also used
    void main (void);
    

    감사합니다.


    도움이 되었다고 생각되는 게시물에 대해 "답변 수락"을 클릭하고 좋아요를 누르십시오.이 답변에 대해 추가 질문이 있는 경우 "댓글"을 추가하십시오. 참고: Q&A에서 이메일 알림을 받으려면 설명서의 지침에 따라 이메일 알림을 활성화하세요.