2010-10-15 9 views
25

ho un programma come questoCome commentare poche righe, con i commenti all'interno

int main(){ 

    char c; 
    int i; /* counter */ 
    double d; 

    return 0; 
} 

se voglio commentare char, int e doppia, e solo tornare senza commenti, posso farlo? il commento che è già lì ferma il commento .. C'è un modo facile/veloce per commentarlo?

+11

In generale, userei '//' per i commenti di una riga alla fine della riga. Quindi sarebbe '// counter' e potresti facilmente racchiudere il blocco in' /*...*/ ' –

risposta

73
int main(){ 
#if 0 
    char c; 
    int i; /* counter */ 
    double d; 
#endif 
    return 0; 
} 

non è strettamente un commento, ma l'effetto è quello che si vuole ed è facile da ripristinare.

Questo anche si adatta bene ai blocchi di codice più grandi, soprattutto se si dispone di un editor che può corrispondere all'inizio e alla fine dello #if..#endif.

+11

+1 ... e i "commenti del preprocessore" (a differenza di '/ * ... * /') annidano – pmg

+7

#IF FALSE è anche un'opzione, ed è più esplicito –

+0

impressionante ! grazie – pvinis

12
int main(){ 

/* 
    char c; 
    int i; // counter 
    double d; 
*/ 
    return 0; 
} 
+4

@ La risposta di Steve è abbastanza intelligente, ma trovo che sia la cosa più comune e meno probabile che lasci il tuo dev manager che fa domande :) –

+0

Non voglio modificare i commenti da/**/a // mentre sto scrivendo roba sul kernel di Linux .. – pvinis

+4

@KennyCason '#if 0' è abbastanza comune e ampiamente compreso, e ha il vantaggio aggiuntivo di lavorare sia in C che in C++. – meagar

5

Se il compilatore supporta la notazione // per i commenti (non standard in C, ma abbastanza comunemente supportati), utilizzare un editor che può attivare un intero blocco di righe con questi.

+2

'//' i commenti sono disponibili nei compilatori C99 standard :-) – pmg

+0

In effetti, dipende dal sapore di C utilizzato ;-) – Bruno

+0

+1 questo è probabilmente il migliore risposta –

5

In C99

int main(){ 

// char c; 
// int i; /* counter */ 
// double d; 

    return 0; 
} 
2

Ci sono un sacco di editori/IDE che supporta i commenti/decommentando con tasti di scelta rapida. Questa è una caratteristica molto utile. In Kate/KDevelop il tasto di scelta rapida è Ctrl + D.

Questo è anche descritto (insieme ad altri IDE che supportano questa funzione) nella domanda THIS.

+1

Ctrl + K, Ctrl + C in MSVC++. –

5

io ho un debole per:

int main(){ 

#ifdef USE_DISABLED_CODE 
    char c; 
    int i; /* counter */ 
    double d; 
#endif 

    return 0; 
} 

utilizzare un nome conciso come 'CODE_REMOVED_FOR_TESTING_PURPOSES' o 'REMOVED_FROM_E3_BUILD', e non definiscono, e hai lasciato da soli un commento stringato sul perché il codice è disabilitato (che verrà visualizzato se si esegue una ricerca in tutti i file per #ifdef).

+1

Recentemente (nel 2010) ho rimosso i blocchi #ifdef POST_JUNE_DEVELOPMENT da circa 30 file. Nessuno è ora sicuro di quale anno fosse in discussione (probabilmente verso il 1994, ma potrebbe essere stato più vecchio, abbiamo cambiato i sistemi CM in quel momento, quindi la storia più vecchia è andata persa), molto meno di quanto lo sviluppo del post era previsto sta per essere. Probabilmente dovresti documentare il significato della definizione in almeno un punto. –

+0

Io lo uso quando ci si avvicina al trading off. Provo ad usare una frase che descrive ciò che il blocco * significa * piuttosto che qualcosa di abbastanza vago come "POST_JUNE_DEVELOPMENT". So che vedrò di nuovo questo codice qualche anno dopo e mi chiedo chi sia stato June, quale posto abbia ricoperto, o perché la sua partenza abbia permesso di sviluppare qualcosa. ;-) – RBerteig

Problemi correlati