DAVID J. MALAN: Belə çıxır ki, bir string çıxarmaq təxminən kimi deyil , primitiv çıxarmaq kimi sadə bir int və ya float kimi. Bütün sonra, başlıq altında bir string bir ardıcıllıqla simvol. Belə ki, bir string çıxarmaq, buna görə də, var ki, bütün ardıcıllıqla çıxarmaq cəlb simvol. Ki geri diqqət açın edək son həyata keçirilməsi və bu rip line, string t, s bərabər olan aydın kifayət deyil. Nin xətti ilə əvəz edək ki, bu kimi əvəzinə, görünür. String t string uzunluğu və malloc alır bir char s plus 1 dəfə ölçüsü. İndi gedir bir az quote var kodu bu xətt üzrə. Birincisi, malloc, qısa üçün yaddaş ayrılması və funksiyası yalnız edir. Bir tam nəzərə alaraq, sizi qaytarır xatirəsinə bir yığın ünvanı ki, bir çox bytes. Eyni zamanda, simli s uzunluğu plus 1 biz istəyirəm ki, qeyd üçün nəzərdə tutulur s artıq tutur kimi bir çox bytes, onun null terminator, o cümlədən bir simli sonunda backslash 0. Eyni zamanda, mən mütləq xatırlamıram bir char hətta, nə qədər böyük ən sistemi sadəcə 1 var baxmayaraq byte, belə ki, mən char ölçüsü zəng edəcəyik dinamik anlamaq necə böyük fərdi xarakter. Sonra birlikdə vurulur, mən geri Mən lazımdır ki bytes sayı. Amma malloc nə etmədikdə biz lazım olan yaddaş geri? Aşağıdakı kimi mən yaxşı ki, kontrol ediyorum. T null bərabərdir, onda mən ilk gedirəm pulsuz s, yaddaş almaq geri string, sonra mən gedirəm səhv demek üçün, 1 qayıtmaq. Bütün yaxşı olsa, mən davam gedirəm dörd loop istifadə və təkrarlamaq aşağıdakı kimi. Int i 0, n bərabərdir almaq s simli uzunluğu. Mən belə uzun i kimi bunu gedirəm daha az və ya n bərabər ki, mən vasitəsilə və o cümlədən təkrarlamaq ə null xitam xarakter. Və hər iteration, mən i arttırmayı olacaq. Eyni zamanda, bu loop daxilində, surəti T i-ci daxil s i-ci xarakter yeri, bu t etmək kifayətdir bracket i s bracket i alır. Mən yaxşı bir əlavə əlavə istədiyiniz Mənim kodu line. Xüsusilə, çünki mən artıq istifadə edirəm malloc, yaddaş üçün xahiş, mənim var ki, yaddaş pulsuz məsuliyyət Mən bu bitirdim zaman, yalnız biz kimi yaddaş azad edilməlidir ki, get simli bizə verdiyi. Belə ki, bu proqramın çox sonunda, mən bir əlavə xətt əlavə etmək üçün gedir qaytarılması əvvəl pulsuz t 0 uğur göstərir. Indi, saxlamaq tərtib edək, və Bu yeni proqram axır. Copy 1 dot çizgi surəti 1 olun. Mən bir şey kimi demək lazımdır salam bütün kiçik. Və təşəkkürlə, bu dəfə mənim orijinal dəyişməz olaraq qalır. salam bütün kiçik. Amma surəti, həqiqətən, kapitallaşdırılmış edir.