프로젝트를 iPhone으로 포팅 할 때 찾을 수없는 realloc
및 memcpy
을 사용합니다. 포함 할 헤더는 무엇입니까?memcpy 및 realloc에 어떤 헤더를 포함해야합니까?
이 프로젝트는 Objective C와 C++를 섞어 놓은 것이므로 분실되기 시작했습니다.
미리 도움 주셔서 감사합니다. C에서
프로젝트를 iPhone으로 포팅 할 때 찾을 수없는 realloc
및 memcpy
을 사용합니다. 포함 할 헤더는 무엇입니까?memcpy 및 realloc에 어떤 헤더를 포함해야합니까?
이 프로젝트는 Objective C와 C++를 섞어 놓은 것이므로 분실되기 시작했습니다.
미리 도움 주셔서 감사합니다. C에서
:
#include <string.h> // memcpy
#include <stdlib.h> //realloc
C++에서는 c
와 .h
접두사를 제거합니다. C++에서는 std
네임 스페이스에 배치되지만 전역 적입니다.
C++에서 std::copy
은 C의 memcpy
보다 더 관용적이지만, 후자는 잘 작동합니다. std::copy
을 얻으려면 #include <algorithm>
이 필요합니다.
realloc
에 해당하는 직접 C++ 코드는 없습니다.
이 대답을 주석과 함께 유용하지 않은 것으로 표시 할 수 있다면 올바르지 않으므로 그렇게 할 것입니다. GMan이 말했듯이 realloc은
나는 C++에서 C 표준 라이브러리 함수'realloc '을 사용할 수 없다고 말하지 않았다. (물론 C++ 표준 라이브러리는 C89 표준 라이브러리 전체를 포함하고 있기 때문이다. 나는'std :: copy'가'memcpy'를 위해'realloc'의 기능을 포함하는 새로운 C++ 표준 라이브러리 함수가 없다고 말했습니다. 내 대답이 다른 대답과 관련하여 분리되어 읽혀지면 내 의도가 명확하지 않은 것으로 생각되지만, 이미 수용된 대답입니다. –
'#ifdef __cplusplus' /'# else'를 사용하여 C 나 C++에 적합한 것을 자동으로 포함 할 수 있습니다. –