File di intestazione obbligatori e facoltativiRequired and Optional Header Files

La descrizione di ogni routine di runtime include un elenco di file di inclusione o di intestazione (.H) obbligatori o facoltativi per tale routine.The description of each run-time routine includes a list of the required and optional include, or header (.H), files for that routine. I file di intestazione obbligatori devono essere inclusi per ottenere la dichiarazione di funzione per la routine o una definizione utilizzata da un'altra routine chiamata internamente.Required header files need to be included to obtain the function declaration for the routine or a definition used by another routine called internally. I file di intestazione facoltativi in genere vengono importati per sfruttare le costanti predefinite, le definizioni dei tipi o le macro inline.Optional header files are usually included to take advantage of predefined constants, type definitions, or inline macros. Nella tabella seguente sono elencati alcuni esempi del contenuto dei file di intestazione facoltativi:The following table lists some examples of optional header file contents:

DefinizioneDefinition EsempioExample
Definizione macroMacro definition Se una routine della libreria viene implementata come macro, la definizione della macro può trovarsi in un file di intestazione diverso dal file di intestazione per la routine originale.If a library routine is implemented as a macro, the macro definition may be in a header file other than the header file for the original routine. Ad esempio, la macro _toupper viene definita nel file di intestazione CTYPE.H, mentre la funzione toupper viene dichiarata in STDLIB.H.For instance, the _toupper macro is defined in the header file CTYPE.H, while the function toupper is declared in STDLIB.H.
Costante predefinitaPredefined Constant Molte routine di libreria fanno riferimento alle costanti definite nei file di intestazione.Many library routines refer to constants that are defined in header files. Ad esempio, le routine _open utilizzano costanti come ad esempio _O_CREAT, definita nel file di intestazione FCNTL.H.For instance, the _open routine uses constants such as _O_CREAT, which is defined in the header file FCNTL.H.
Definizione dei tipiType definition Alcune routine di libreria restituiscono una struttura o accettano una struttura come argomento.Some library routines return a structure or take a structure as an argument. Ad esempio, le routine del flusso di input/output utilizzano una struttura di tipo FILE, definita in STDIO.H.For example, stream input/output routines use a structure of type FILE, which is defined in STDIO.H.

I file di intestazione della libreria di runtime forniscono dichiarazioni di funzione nello stile standard raccomandato dall'ANSI/ISO C.The run-time library header files provide function declarations in the ANSI/ISO C standard recommended style. Il compilatore esegue il controllo dei tipi in qualsiasi riferimento di routine che viene creato dopo la dichiarazione di funzione associata.The compiler performs type checking on any routine reference that occurs after its associated function declaration. Le dichiarazioni di funzione sono particolarmente importanti per le routine che restituiscono un valore di un certo tipo diverso da int che è l'impostazione predefinita.Function declarations are especially important for routines that return a value of some type other than int, which is the default. Le routine che non specificano il valore restituito appropriato nella dichiarazione vengono considerate dal compilatore come funzioni che restituiscono int, il che può causare risultati imprevisti.Routines that do not specify their appropriate return value in their declaration will be considered by the compiler to return an int, which can cause unexpected results. Per altre informazioni, vedere Controllo dei tipi.See Type Checking for more information.

Vedere ancheSee Also

CRT Library Features (Funzionalità della libreria CRT)CRT Library Features