2012-12-05 2 views
0

최근에 온라인 심사 위원 (예 : UVA 온라인 심사 위원)의 문제를 해결하기 시작했습니다. C++로 이러한 문제를 해결하려고 노력하며 xcode IDE로 코드를 작성합니다.xcode에 포함되지 않은 오류 포함

그러나 내 코드에서 printf 나 scanf와 같은 일부 C 함수를 사용하면 xCode가 불평하지 않고 모든 것이 올바르게 실행되지만 판단을 내 코드에 제출하면 GNU C++ 4.5로 컴파일됩니다 .3 컴파일 오류가 발생합니다. 문제는 cstdio 헤더를 포함해야한다는 것입니다.

xCode가이 작은 실수에 대해 경고하지 않는 것은 다소 귀찮습니다. 이 오류를 켤 수있는 방법이 있습니까? 그래서 헤더를 필요로하는 함수를 사용할 때 경고 나 에러가 발생합니까?

감사합니다.

+0

프로젝트 설정을 확인하십시오. 더 많은 경고를 사용하려면 하나 여야합니다. –

+0

'Missing Function Prototype을 오류로 처리' – Petesh

+0

아니요, 아무런 오류도주지 않습니다 :(덕분에 입력! – Devos50

답변

0

이 문제는 LLVM 컴파일러의 헤더 파일 집합 때문에 발생합니다. <iostream>에는 <cstdio>을 포함하는 <ios>이 포함되어있어 printf이라는 선언이 나타납니다.

-std=gnu++0x 플래그를 사용하여 cpp 코드를 컴파일하면 Linux에서 g++ 아래에 성공적으로 컴파일됩니다. 내가 헤더가 암시 적으로 LLVM

<ios> 헤더가 포함되어있는대로 GCC 헤더를 포함, GCC 적절한의 전체 사본을 설치하지 않으면 맥 OS X에서 동일한 오류를 트리거 할 수있는 옵션이 있다고 생각하지 않습니다

이 경우 함수가 선언되었는지 확인하려면 #include <cstdio>을 수행 했어야하며 gnu gcc 컴파일러에서도 작동했을 것입니다.

관련 문제