>> SPEAKER: Vom numi un șir.
E doar o secvență de caractere.
Într-adevăr, aceasta este pur și simplu o matrice de caractere.
Și astfel, chiar dacă vom obține un șir de la utilizatorul în mod obișnuit cu a lui CS50
GetString, putem trece apoi la repeta de-a lungul caractere în care string
pe rând ca și cum acea string este într-adevăr un tablou.
Să încercăm în cod.
>> Includeți cs50.h.
Include stdio.h.
Și să includă, de asemenea, string.h astfel încât să avem acces
la funcția de StringLen.
Fie acum a declara principal void main int.
Și să acum continua pentru a obține un șir de la utilizator.
Printf intrare.
Hai acum a declara un sir numindu-l s, și de apel prietenul nostru getString.
>> Să acum proceda pentru a verifica, a făcut utilizatorul într-adevăr, da-mi un șir de caractere, deoarece
se dovedește, pe de getString propriu documentație, getString ar putea pe
prilej de întoarcere NULL, o santinelă special valoare care, în esență,
indică faptul că utilizatorul nu a făcut coopera și într-un fel a făcut
nu oferă un șir.
Deci, haideți să verificați pentru că cu o condiție.
>> IF s nu este egal cu NULL, atunci putem Presupun că e într-adevăr este un șir, un
tablou de caractere, și treceți la itera peste aceste caractere.
PENTRU int i devine 0, hai, de asemenea, a declara n ca fiind egală cu lungimea șirului de e așa
timp cât i este mai mic decât n, și pe fiecare repetare, să i incrementa.
În cadrul acestui buclă atunci, să numim printf de% c backslash n și apoi conectați
în paranteză această valoare s i, prin urmare, imprima un caracter la un moment dat fiecare
din masinile din s..
>> Hai acum compila și rula acest program.
Face șir.
. / Șir de intrare mea va fi "salut". Și acolo îl avem.
H-E-L-L-O, fiecare caracter pe o linie proprie.