>> David J. MALAN: Chcę napisać program który pyta użytkownika ciąg znaków i
następnie przystąpić do drukowania tego ciągu znaków dla jednej postaci jednej linii.
Teraz w przeszłości, tak by zrobił zapewne z kwadratową notacji uchwytem,
skutecznego leczenia ciąg jest tablicą znaków.
>> Ale tym razem, niech zamiast leczyć ciąg tego, co tak naprawdę jest,
wskaźnik lub adres.
W szczególności, adres charakter, naprawdę adres
Pierwszy znak w sekwencji znaków, które wspólnie wiedzą
jako ciąg.
>> Niech najpierw zadeklarować ciąg dla co to naprawdę jest, char *.
I nazwijmy go s.
A następnie przypisać mu powrót wartość pobiera ciąg znaków.
>> Niech następny zrobić sprawdzanie błędów.
Jeśli s jest null, niech natychmiast wrócić tak, że nie przypadkowo
nieprawidłowego tym wskaźnikiem NULL.
>> Następnie niech iteracyjnego znaków w S w następujący sposób.
Do int, i dostaje 0.
n to długość ciągu znaków s.
Czy to tak długo, jak jest mniej niż n.
I na każdej iteracji, przyrost i.
>> I co chcemy zrobić na każdej iteracji?
Załóżmy teraz wydrukować na każdej iteracji pojedynczy znak
następnie nową linią.
A co zrobić, charakter chcemy wydrukować?
Proponuję udać się do adresu która jest równa sumie S Plus ja.
>> Teraz, dlaczego to wyrażenie?
Cóż, pamiętam, że przechowywany jest w s. adres pierwszego znaku
w naszej ciąg, s.
Tymczasem, i jest zwiększany na każdej iteracji, tak że rozpoczyna się w 0 ° C,
Następnie zmienia się na 1, a następnie przechodzi do 2.
>> Więc innymi słowy, S Plus i skutecznie reprezentuje adres
i-ty znak w sek.
Więc jeśli mamy iść na ten adres w drodze operator *, będziemy iść do
i-ty znak w ciągu.
I to jest wartość, która będzie podstawiony dla naszego zastępczego,
procent C.
>> Miejmy potwierdzić tyle.
Ratujmy, kompilacji i uruchomić ten program.
Dodać odnośniki, DOT wskaźniki ukośnymi.
I teraz ja to dać Ciąg jak przywitać.
Enter.
>> I rzeczywiście, widzę H-E-L-L-O, z każdy char w oddzielnym wierszu.