>> Дејвид Џ MALAN: Да се ​​напише програма што го поттикнува на корисникот за стринг и
потоа да продолжи да се печати стрингот карактер за карактер по еден на линија.
Сега и во минатото, ние би го направиле тоа веројатно со квадратни заградата нотација,
ефикасно лекување на низа е низа од карактери.
>> Но овој пат, ајде, наместо лекување низа за она што навистина е,
покажувачот или адреса.
Поточно, на адреса на карактер, навистина адреса на
првиот карактер, во низа ликови кои ние колективно знаете
како стринг.
>> Ајде прво да го прогласи низа за она што навистина е, char *.
И ние ќе го наречеме тоа.
А потоа да ја доделите на враќање вредност на Get стринг.
>> Ајде следната направи некои грешка проверка.
Ако s е нула, ајде веднаш да се врати така што ние не случајно
dereference дека NULL покажувач.
>> Напред, ајде да iterate преку карактери во ОК како што следи.
За int, јас добива 0.
n е еднакво на стрингот должина на коментарите.
Го направите тоа толку долго како што е помалку од n.
И на секоја итерација, прираст i.
>> И она што сакаме да направи на секој повторување?
Ајде сега да испечатите на секоја итерација еден лик
проследено со нова линија.
Па, што карактер направите ние сакаме да ги испечатите?
Предлагам да одиме на адресата дека е еднаква на збирот на коментарите плус јас.
>> Сега, зошто тој израз?
Добро, сети дека се чуваат во ОК е адреса на првиот карактер
во нашата низа, с.
Во меѓувреме, јас се зголемува на секоја итерација, така што почнува на 0,
тогаш оди до 1, а потоа оди на 2.
>> Значи со други зборови, на плус i ефикасно претставува адреса на
i-тиот карактер во с.
Па ако одиме на таа адреса, по пат на на * оператор, ние ќе се случува на
i-тиот карактер во стрингот.
И тоа е вредност, која ќе биде заменет за нашите случаеви,
проценти В
>> Ајде да потврди колку.
Ајде да се спаси, ги собере, и ја извршите оваа програма.
Направи покажувачи, точка црта совети.
И сега јас ќе го даде жиците како здраво.
Enter.
>> И навистина, гледам H-Е-Л-Л-О, со секој знак на сопствената линија.