아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
흰사마귀126
흰사마귀12619.04.07

C언어와 C++에서 main(void)와 main()은 서로 어떤 차이가 있나요?

C언어는 main(void)로, C++는 main()로 작성하는게 권장 표준사항이라고 어디서 들었는데, 실제로 그런가요? 어디서 확인할수 있을까요?

main(void)나 main()이나 어떻게 쓰던 상관 없는것은 압니다만, 궁금해서 그렇습니다!

55글자 더 채워주세요.
답변의 개수
1개의 답변이 있어요!
  • #include <stdio.h> // C int test() { } int testVoid(void) { } int main(int argc, char **argv) { int aa; test(); // 당연히 문제가 발생하지 않습니다. test(aa); // 인자가 ()이지만 문제가 발생하지 않습니다. testVoid(); // 문제가 발생하지 않습니다. testVoid(aa); // 인자가 (void)이면 문제가 발생합니다. return 0; }

    int main()은 인자로 무엇이든지 받을 수 있는 함수로 해석하지만

    int main(void)는 인자로 아무것도 받을 수 없는 함수로 해석합니다.

    #include <iostream> // C++ int test() { } int testVoid(void) { } int main(int argc, char **argv) { int aa; test(); // 문제가 발생하지 않습니다. test(aa); // 문제가 발생합니다! testVoid(); // 문제가 발생하지 않습니다. testVoid(aa); // 문제가 발생합니다! return 0; }

    C++의 경우에는 좀 다릅니다.

    C++은 int main()도 인자로 아무것도 받을 수 없는 함수로 해석합니다.