Commenti CC Comments

Un commento è una sequenza di caratteri che inizia con una combinazione barra/asterisco (/*) considerata come un singolo spazio vuoto dal compilatore e altrimenti ignorata.A "comment" is a sequence of characters beginning with a forward slash/asterisk combination (/*) that is treated as a single white-space character by the compiler and is otherwise ignored. Un commento può contenere qualsiasi combinazione di caratteri del set di caratteri rappresentabili, inclusi i caratteri di nuova riga, fatta eccezione per il delimitatore di fine commento (*/).A comment can include any combination of characters from the representable character set, including newline characters, but excluding the "end comment" delimiter (*/). I commenti possono occupare più di una riga, ma non possono essere annidati.Comments can occupy more than one line but cannot be nested.

I commenti possono trovarsi in qualsiasi punto in cui sia consentito uno spazio vuoto.Comments can appear anywhere a white-space character is allowed. Poiché il compilatore considera un commento come un singolo spazio vuoto, non è possibile includere commenti nei token.Since the compiler treats a comment as a single white-space character, you cannot include comments within tokens. In tal caso, i caratteri del commento verrebbero ignorati.The compiler ignores the characters in the comment.

Utilizzare i commenti per documentare il codice.Use comments to document your code. L'esempio seguente rappresenta un commento accettato dal compilatore:This example is a comment accepted by the compiler:

/* Comments can contain keywords such as  
   for and while without generating errors. */  

I commenti possono essere presenti sulla stessa riga come un'istruzione di codice:Comments can appear on the same line as a code statement:

printf( "Hello\n" );  /* Comments can go here */  

È possibile anteporre alle funzioni o ai moduli di programma un blocco di commenti descrittivi:You can choose to precede functions or program modules with a descriptive comment block:

/* MATHERR.C illustrates writing an error routine   
 * for math functions.   
 */   

Poiché i commenti non possono essere annidati, l'esempio seguente genera un errore:Since comments cannot contain nested comments, this example causes an error:

/* Comment out this routine for testing   

   /* Open file */  
    fh = _open( "myfile.c", _O_RDONLY );  
    .  
    .  
    .  
 */  

L'errore si verifica perché il compilatore riconosce la prima combinazione */, dopo le parole Open file, come fine del commento.The error occurs because the compiler recognizes the first */, after the words Open file, as the end of the comment. Il compilatore prova a elaborare il testo rimanente e genera un errore quando rileva la combinazione */ all'esterno di un commento.It tries to process the remaining text and produces an error when it finds the */ outside a comment.

Sebbene sia possibile utilizzare i commenti per eseguire il rendering di alcune righe di codice inattive a scopo di test, le direttive per il preprocessore #if e #endif e la compilazione condizionale rappresentano un'alternativa utile per questa attività.While you can use comments to render certain lines of code inactive for test purposes, the preprocessor directives #if and #endif and conditional compilation are a useful alternative for this task. Per altre informazioni, vedere Direttive per il preprocessore in Preprocessor Reference (Riferimenti al preprocessore).For more information, see Preprocessor Directives in the Preprocessor Reference.

Sezione specifica MicrosoftMicrosoft Specific

Il compilatore Microsoft supporta anche commenti a riga singola preceduti da due barre (//).The Microsoft compiler also supports single-line comments preceded by two forward slashes (//). Se si esegue la compilazione con l'opzione /Za (standard ANSI), questi commenti generano errori.If you compile with /Za (ANSI standard), these comments generate errors. Tali commenti non possono estendersi su una seconda riga.These comments cannot extend to a second line.

// This is a valid comment  

I commenti che iniziano con due barre (//) vengono terminati dal successivo carattere di nuova riga non preceduto da un carattere di escape.Comments beginning with two forward slashes (//) are terminated by the next newline character that is not preceded by an escape character. Nell'esempio seguente il carattere di nuova riga è preceduto da una barra rovesciata (\), creando in tal modo una sequenza di escape.In the next example, the newline character is preceded by a backslash (\), creating an "escape sequence." Questa sequenza di escape indica al compilatore di considerare la riga successiva nella riga precedente.This escape sequence causes the compiler to treat the next line as part of the previous line. Per altre informazioni, vedere Sequenze di escape.(For more information, see Escape Sequences.)

// my comment \  
    i++;   

Di conseguenza, l'istruzione i++; viene impostata come commento.Therefore, the i++; statement is commented out.

Per impostazione predefinita, in Microsoft C le estensioni Microsoft sono abilitate.The default for Microsoft C is that the Microsoft extensions are enabled. Utilizzare l'opzione /Za per disabilitare tali estensioni.Use /Za to disable these extensions.

Fine sezione specifica MicrosoftEND Microsoft Specific

Vedere ancheSee Also

Token CC Tokens