>> DAVID MALAN: Vediamo ora restringi questo programma un po 'più.
Non sarebbe bello se potessi toupper maiuscola una lettera se minuscole, e
se non minuscolo, passaggio attraverso invariato?
In altre parole, potrei sostituire il mio if-else blocco con una
singola chiamata a toupper?
>> Beh, per rispondere a questa domanda, Mi piacerebbe meglio consultare il
documentazione per toupper.
Per fare ciò, vorrei aprire un terminale più grande finestra al di fuori di gedit, e
quindi digitare uomo ToUpper, così a significare che mi piacerebbe aprire il
La pagina man per i cosiddetti la toupper funzione.
Su pressione del tasto invio, vedo una schermata simile a questa.
E ora si accorgono che sembrano avere combinato la documentazione per toupper
superiore a quella per tolower.
Ma non importa.
>> Noterete sotto la sinossi che Mi viene in mente che, anzi, per usare questa
funzione, devo includere l' ctype.h file di intestazione.
Sotto di esso, si vede che è toupper dichiarato come restituire un int e
accettando un int, che è un po ' curioso, dal momento che finora, sono stato
manipolando solo caratteri.
Ma questo è OK.
Si scopre che questo è solo un convenzione, e possiamo ancora usare come c
se è un char, anche se è dichiarato come int.
>> Ora, nella descrizione qui, vedo che toupper converte la lettera c per
maiuscolo, se possibile.
E sotto valore di ritorno, vedo che il valore restituito è quello della
lettera convertito, oppure c, se la conversione non era possibile.
E c'è l'intuizione Stavo cercando.
Se c non è, infatti, un minuscolo lettera, sembra che toupper sarà
semplicemente passarlo insieme invariato.
>> Quindi cerchiamo di tornare ora al mio codice.
E andiamo ora rimuovere la totalità dei questo blocco condizionale e sostituirlo,
molto semplicemente, con printf% c virgola toupper della staffa s chiudo parentesi
chiudi parentesi e virgola, quindi a significare che mi piacerebbe sostituire% c
con la capitalizzazione del lettera esima in s se il esima
lettera s è minuscolo.
O anche se non lo è, sarà attraversato invariato.
>> Vediamo ora compilare questo programma con fare capitalize2, ed eseguirlo con
capitalize2, ancora una volta, digitando ciao.
E infatti, torniamo maiuscolo.
Facciamo di nuovo digitare David.
E, anche, è maiuscola.