Come creare un'istruzione else Se in C

March 12

L'istruzione else Se è il singolo più importante costrutto programma in C, e dal momento che si creerà e utilizzarlo praticamente in ogni programma, è anche il luogo si è più probabile imbattersi in problemi.

istruzione

Creare l'istruzione else Se

1 Inizia con le basi. La struttura di base di ogni Se Else in C assume questa forma:

se l'azione (condizione);

2 Staffa vostra azione in modo corretto. L'azione può essere un singolo comando, o più spesso una serie di comandi, tra parentesi graffe.

Creare la condizione

3 Rendetevi conto che una condizione tutt'altro che restituisce 0 (false) o qualsiasi altra cosa (vero).

4 Sappiate che il tipo più comune è il confronto tra variabili o valori:
== uguaglianza
! = Diseguaglianza
> Maggiore di
<Meno
> = Maggiore o uguale a
<= Minore o uguale a

5 Confronta tipi numerici e di carattere, se lo desiderano, ma attenzione: personaggi confrontano sulla base del set di caratteri in uso su quel sistema, e che può essere diverso, un giorno su qualche altro sistema operativo.

6 Non cercare di confrontare direttamente le matrici o strutture. Invece, scrivere una funzione che effettuerà il confronto.

7 Capire che le librerie standard C includono tali funzioni per le stringhe. Vedere strcmp (), stricmp (), e strncmp ().

8 Utilizzare l'assegnazione di restituire il valore che è stato assegnato.

if ((x = malloc (100)) == NULL) abort (); Il valore restituito da malloc () è sia salvato x e confrontato con NULL, rendendo il codice più conciso.

9 Utilizzare una tecnica di vero e provato: E 'comune avere funzioni restituiscono 1 in caso di successo e 0 in caso di fallimento, e li usa come una condizione.

10 Rendetevi conto che in C, tutto ha un valore, quindi tutto può essere la condizione. Per esempio, un confronto a 0 è solitamente ridondante.

if (x) printf ( "x non è zero \ n");

Combinare e modificare le condizioni

11 Usa il ! (Non) all'operatore di negare, o indietro, una condizione.

se printf ( "x è zero \ n") (x!);

12 Utilizzare && (e) e || (O) per combinare le condizioni logicamente. && Richiede entrambe le condizioni vere per essere vero; || è vero se uno dei due è.

13 Utilizzare le parentesi per controllare come vengono valutate le condizioni.

if (x == 5 e y == 6 o z == 7) è ambiguo;

if ((x == 5 e y == 6) o z == 7) è chiaro.

14 Approfitta delle limitazioni di C. C sarà sempre valutare le parti di un && o || da sinistra a destra, e fermare valutare volta conosce la risposta. Utilizzare questo a vostro vantaggio. Per esempio,

if (x e * x) previene errori di runtime nel caso in cui x è nullo, in quanto C avrà smesso di valutazione prima della dereference.

Aggiungere Clausole Else

15 Aggiungere un'azione alternativa se la condizione è falsa, semplicemente aggiungendo la parola il resto dopo l'azione, poi un'altra azione, in questo modo:

se l'azione (condizione); azione altro;

16 Sappiate che entrambe le azioni possono essere, e in genere sono, interi gruppi di comandi inclusi tra parentesi graffe, in questo modo:

if (condizione) {
fare cose;
} altro {
fare altre cose;
}

17 Rendetevi conto che è comune per l'istruzione else per includere un altro caso, per selezionare quello giusto da tutta una serie di casi. Considerate questo esempio:

if (x <= 80) {
grade = 'C';
} Else if (x <= 90) {
grade = 'B';
} altro {
grade = 'A';
}

Consigli e avvertenze

  • Mettere le parentesi graffe in anche quando non è necessario, per chiarezza.
  • Attenzione di rientro che lo fa apparire come diverse righe di codice rientrino in una o l'altro ramo del costrutto Else If. C ignora indentazione.
  • Ricordate, == è per il confronto, e = è per l'assegnazione. Se si dimentica il secondo simbolo, il vostro confronto sarà effettivamente cambiare il valore!