Interpretando o nome da biblioteca C 'man'

0

Certos arquivos da biblioteca C mostram vários arquivos #include no topo. Por exemplo, man connect mostra

SYNOPSIS
  #include <sys/types.h>
  #include <sys/socket.h>

No entanto, para chamar o comando connect , somente incluir sys/socket.h é necessário. Por que eles organizam o código-fonte para que também seja necessário incluir outro arquivo? Há casos em que você deseja evitar incluir sys/types.h ?

    
por Alex 22.08.2017 / 15:51

1 resposta

2

Na página man do Linux seção Notas:

POSIX.1-2001 does not require the inclusion of <sys/types.h>, and this header file is not required on Linux. However, some historical (BSD) implementations required this header file, and portable applications are probably wise to include it.

Eu acho que é por isso que a página de manual do Mac inclui sys/types.h também.

    
por 22.08.2017 / 16:03

Tags