ac 함수를 정의하는 헤더 파일을 찾는 방법은 무엇입니까?

ac 함수를 정의하는 헤더 파일을 찾는 방법은 무엇입니까?

C 함수 선언이 어느 헤더 파일에 있는지 알아내는 쉬운 방법이 있습니까? cding into /usr/include및 run( grep -E 'system.*\(' *.h -R)에는 약간의 시행착오가 필요하지만 이를 수행하는 더 쉬운 방법은 없습니까?

답변1

$ man 2 read

...

READ(2)                    Linux Programmer's Manual                   READ(2)

NAME
       read - read from a file descriptor

SYNOPSIS
       #include <unistd.h>
 ...

답변2

시스템에서 헤더 파일을 검색하면 함수가 선언된 시스템의 헤더 파일에서 찾을 수 있습니다. 때로는 함수가 복잡한 매크로를 통해 선언되기 때문에 이것이 어려울 수 있습니다. 어떤 헤더 파일이 함수를 선언하는지 알려줄 뿐입니다.당신의시스템; 이는 다른 헤더를 먼저 포함해야 하기 때문에 직접 포함할 수 없는 헤더일 수도 있습니다.

포함할 헤더 파일을 찾는 유일한 안전한 방법은 해당 기능을 제공하는 라이브러리에 대한 설명서를 참조하는 것입니다. 표준 라이브러리의 경우 다음을 참조할 수 있습니다.

  • C 표준(C89=C90,C99또는C11)는 C가 실행되는 모든 플랫폼에서 사용할 수 있는 기능을 정의합니다.
  • 이것POSIX/단일 Unix 표준(POSIX:2004,POSIX:2008)는 각 UNIX 계열 플랫폼에서 사용할 수 있는 기능을 정의합니다.
  • 귀하의 플랫폼에는 다른 기능이 있거나 추가 기능을 제공할 수 있습니다. 맨페이지( man 3 function_name또는 man 2 function_name-의 차이점) 를 참조하세요.2와 3주로 역사적) 또는 기타 문서(예:GNU libc 매뉴얼리눅스에서).

관련 정보