ALLISON BUCHHOLTZ-AU: با سلام، به همه. به بخش خوش آمدید. امروز فقط برای رفتن به تمام مسابقه مرور امتحان خود را در روز چهارشنبه. من امیدوارم که همه یاد می آورد که آنها یک مسابقه در روز چهارشنبه. و اگر شما این کار را نکرد، به خوبی، در حال حاضر شما به یاد شده است. بنابراین چهارشنبه مطمئن شوید که شما نشان می دهد تا برای کلاس و یا دیگر تسهیلات به عنوان لازم است. شما بچه ها در حال رفتن به عالی. آن را به بزرگ. و من قصد دارم به همه چیز من می توانم برای کمک به شما آماده برای امروز شما امتحان در حال حاضر. و همچنین در مورد شما نمی دانم، است البته جلسه بررسی گسترده ای وجود دارد امروز ساعت 7 در آزمایشگاه های شمال غربی B103 اتاق. شما می توانید دوباره به من برای دوباره به نواز دعوت به دیدن من بخشی از آن جلسه بررسی منجر نیز می باشد. بنابراین اگر شما نمی توانید به اندازه کافی از من در حال حاضر، شما می توانید دوباره بیای. همه حق است، چیزهای اولین اولین. فقط برخی از راهنمایی مسابقه قبل از ما در واقع شیرجه رفتن در به بررسی. بنابراین همانطور که با هر آزمون، عمل قطعا به شما کمک خواهد کرد. می امتحانات از گذشته وجود دارد شش یا هفت سال در آنجا، به طوری که بسیاری از عمل است مواد را برای شما بچه ها داشته باشند. و در واقع، امروز است که واقعا فقط رفتن به رفتن بیش از هر موضوع که شما بچه ها سوالات و همچنین در به عنوان کار از طریق مشکلات عمل از مسابقه صفر است. پس من پرتاب کردن صفر مسابقه از سال گذشته در اینجا، و ما می توانیم از طریق هر گونه مشکلی کار که شما می خواهم به. 

بنابراین تمرین. شما در حال رفتن به شروع به انجام است که امروز. کد بر روی کاغذ. بنابراین، بله، اگر همه در واقع از آن خارج مقاله، که عالی خواهی بود، چون تو نمی رفتن به کامپیوتر خود را در امتحان و نوشتن کد با دست اغلب بسیار مشکل تر از شما ممکن است انتظار. شما فقط به استفاده دیدن آن و تایپ کردن آن، و شما باید خود را به کامپایلر به شما کمک کند از زمانی که شما اشتباهات، اما شما در آزمون دریافت کنید که نیست. بنابراین واقعا به واقع مهم قادر به نوشتن کد، و حافظه عضلانی انجام آن را با دست واقعا به شما کمک خواهد کرد. 

بنابراین ما در حال گرفتن کمی نزدیک است. این روز دوشنبه. امتحان خود را در روز چهارشنبه است. اما اگر شما هم، قطعا یکی را از آزمون نسبت به سال گذشته یا سال قبل تحت محدودیت زمان از یک ساعت و نیم. فقط دست کشیدن از یک ساعت و نیم از زمان، و نشستن خود را، و فقط از طریق مشکلات کار به عنوان اگر شما در واقع مصرف آن، به خاطر یکی از بزرگترین چیزهایی که ما در مورد گوش آزمونها این است که آنها بسیار طولانی است. این مقدار زیادی از مواد است. هستند بسیاری از سوالات وجود دارد، و بسیاری از افراد ممکن است به اتمام برساند. من می دانم که من کاملا به پایان نمی سرگرمی من وقتی که من کلاس گرفت. 

در آن توجه داشته باشید، به عنوان یک کمتر بخش راحت، درک کنند که این البته به معنای برای مردم در تمام سطوح تهیه کردن. کل دلیل ما تو را تقسیم کمتر و راحت، جایی بین، و راحت تر است به نوع آن را عادلانه تر کند. و اگر شما کمتر و راحت است، آن را لازم نیست در هر سه تا همه چیز را. اگر شما مانند گرفتن همه چیز، شما احتمالا در بخش راحت تر باشد. پس معلوم است که خودتان را شکست دهید تا خیلی سخت اگر شما می توانید امتحان رو تموم کنه. نگاهی آن را از من، من این کار را انجام نمی دهد. من هنوز متمرکز. من هنوز کمک به آموزش درس. شما خوب خواهید بود. همه راست. و در آخر، گرفتن برخی از خواب. بدیهی است با هر آزمون ما همیشه می گویند این. قراردادن در شب قبل و هر گونه خواب not-- کند شاید اگر که برای شما کار می کند، برای آن برود. اما برای اکثریت قریب به اتفاق مردم، گرفتن برخی از خواب، اجازه استراحت مغز شما و بازیابی قبل از در آینده برای امتحان واقعا به شما کمک خواهد کرد. تقریبا نیز وجود خواهد داشت قطعا آب نبات در امتحان، بنابراین شما مجبور به نگاه به جلو به. شما بچه ها می رویم به انجام این کار بزرگ است. این رفتن به خوب است. و در حال حاضر در یک ساعت بعد و نیم من سعی خواهد کرد و شما را به عنوان دبستان به عنوان بهترین من می توانم. 

بنابراین من از اسلاید اساسا همه بخش ها تا به حال. من قصد ندارم به رفتن را از طریق همه آنها را به خاطر این است که نمی عملی را در یک ساعت و نیم و همچنین به عنوان کار از طریق مشکلات عمل. بنابراین به جای من یک لیست از موضوعات داشته باشد. این همه چیز است که ما می تواند شما را در مسابقه. اگر هر چیزی وجود دارد که واقعا بیرون می پرد که شما می خواهید برای رفتن بیش از، که شما می خواهید من برای بیش از مفهومی، من می توانید سعی کنید و به شما یک نمای کلی وجود دارد. و یا اگر شما می خواهید برای پرش به حق در به انجام عمل مشکلات با هم، ما می توانیم انجام این کار. این به شما بچه ها است. هستند که بسیاری از شما وجود ندارد. پس از آن هر آنچه که شما بچه ها کاری انجام دهید. من می خواهم به بیشترین مفید به سمت شما بچه ها. بنابراین من به شما اجازه فقط نگاه. 

رسید یک چیز است نمودار که ما را گفت: در مورد پشته و توده. فقط کل ایده پشت که و چه معناست. ALLISON BUCHHOLTZ-AU: بله، OK. این همه راه در است پایان، پس به من اجازه حرکت را از طریق. 

رسید: ما لازم نیست در حال حاضر آن را انجام دهد، اما به هر. 

ALLISON BUCHHOLTZ-AU: وجود دارد anything-- این یکی. آیا این نوع فازی برای مردم؟ رسید: بله، من دوم که. و می تواند ما نیز سرریز بافر؟ ALLISON BUCHHOLTZ-AU: سرریز بافر؟ OK. بنابراین سرریز بافر بسیار است آسان فقط به بحث در مورد. این اساسا بافر شما در مورد فکر می کنم برخی از حافظه آرایه است که شما را، درست است؟ ما به طور معمول صحبت کردن در مورد سرریز بافر در هنگام شما در حال چک کردن چقدر کاربر دادن در، درست است؟ و این ایده که با سرریز بافر است آنها با قرار دادن در دور اطلاعات بیش از حد برای فضای که شما برای آنها اختصاص داده اید، درست است؟ 

بنابراین اگر شما می گویند، را من برخی از پیام، ما هستیم فرض کنید که آنها در حال رفتن به دادن ما یک پیام طول مناسب. شاید خطوط یک زن و شوهر، فلان چیز. بنابراین ما بررسی نمی کند. در عوض آنها به ما در تغذیه تمام کتاب را که یک پیام است، و آن را مملو از مقدار فضای که ما برای این اختصاص داده شده است. و چه اتفاقی می افتد ممکن است بازنویسی مکان های که در آن قرار ندارد. 

بنابراین من می دانم استاد مالان گفت: چیزی در مورد حملات سرریز بافر. به طوری که که در آن کاربر ورودی خواهد کرد برخی از مقدار عظیمی از اطلاعات در امید که او رونویسی گذشته پایان بافر خود را و جایگزین something-- من تعجب می کنم من ما باید کسانی که اسلاید در اینجا. من فکر نمی کنم ما کسانی که اسلاید در اینجا. اما اساسا او را رونویسی بخشی از حافظه که اجازه می دهد تا او را از دسترسی به بخش هایی از کامپیوتر شما که شما را نمی به طور معمول دسترسی داشته باشند. 

بزرگترین چیزی که با سرریز بافر است فقط به درک که در آن اتفاق می افتد زمانی که شما نمی چک کردن چقدر شما کاربر قرار دادن در. هنگامی که شما نوع نمی حفاظت در برابر آن. و در ساده ترین آن چیزی، آن را فقط خود را بر ورود مقدار عظیمی داده ها در تلاش به بازنویسی برخی از امنیت بخشی از حافظه خود را. که همه در آن است است. 

پس این اینجا، پشته و پشته. در واقع همه این است که فقط یک نماینده از حافظه و که در آن همه چیز ذخیره می شود. این واقعا نوع همه شما نیاز به دانستن. بزرگترین چیزهایی که شما نیاز به دانستن است that-- اجازه دهید من اگر ببینید یک better-- در اینجا وجود دارد. بنابراین این پشته در اینجا است. 

پس پشته است که با تمام توابع خود که شما خواستار در هر زمان داده شده است. و آنچه که مهم است به خاطر داشته باشید رفتن از هفته گذشته با malloc این است که شما واقعا باید کنترل های لازم بر روی آن. این همه در زمانی خاص بستگی دارد توابع اجرا. و هنگامی که آنها در حال اجرا، آنها چه هستند فریم پشته نامیده می شود که تا به اینجا بروید. 

پس از آن همه نوع اتفاق می افتد بدون هیچ گونه ورودی واقعی از شما است. شما ارسال برنامه های خود را، و شما آن را اجرا کنیم، و پشته نوع طول می کشد مراقبت از خود را به عنوان آن را به نیاز. بنابراین اگر در اصلی شما خواستار مکعب، که به تصویب خواهد شد. این قاب را ایجاد کنید. اما هیچ چیز شما به صراحت انجام دهید وجود دارد برای ایجاد قاب پشته است که به غیر از ارسال تابع برای شروع، OK؟ 

چه نوع زیر خود را کنترل پشته با malloc است. بنابراین هر زمان که شما چیزی malloc، شما در حال بدست گرفتن حافظه از پشته. و حافظه است که شما داشته باشد، برای عدم وجود یک کلمه بهتر است، کنترل صریح و روشن بر این، به یاد داشته باشید چون با malloc آن را اساسا وجود دارد تا زمانی که شما می گویند در غیر این صورت. برای کسانی از شما که هفته گذشته بخش تماشا، آن وجود دارد تا زمانی که شما آن را به دور. آن وجود دارد مگر اینکه خواهد شد در غیر این صورت گفته نشده است. پس پشته تنها چیزی است شما می توانید از فکر می کنم به عنوان حافظه که شما کنترل بیش از. و کسانی که فقط دو چیز متفاوت بزرگ است. 

دیگر از آن، شما باید نگرانی بیش از حد در مورد پشته و توده سوالات و یا به طور معمول فقط بیشتر اگر شما پارامتر های محلی و یا یک تابع خواهد بود در پشته و یا پشته. بدیهی است در این مورد این امر می تواند پشته. اگر شما mallocing چیزی، که در آن است که در آینده از؟ پشته. اگر شما در آزمونها عمل نگاه کنید، آن به طور کلی نوع سوالات که آنها را داشته باشند. 

شما لازم نیست که نگران باشید بیش از حد در مورد آن. شما به صراحت بیشتری دریافت کنید درباره پشته و توده بعد از آن و یا در کلاس CS دیگر. پس فقط با نوع ایده کلی از این چیست خوب خواهد بود، که من فقط نوع بیش رفت. هر موضوع دیگر؟ بله؟ 

رسید شما می توانید به بیش از اشاره گر دوباره واقعا به سرعت؟ ALLISON BUCHHOLTZ-AU: اشاره گرها؟ آیا می خواهید مفهومی بررسی اجمالی از اشاره گر یا می توانم شما را با اشاره گر تمرین می کنید؟ رسید: نوع مانند نحو. ALLISON BUCHHOLTZ-AU: نحو؟ آره. OK، ما در حال گرفتن وجود دارد. آره، پس این فقط نوعی از چیزی است زمانی که شما یک تابع بازگشتی، هر بار که تابع بازگشتی است نامیده می شود، آن را فقط اضافه می کند دیگر قاب پشته. تقریبا یک مثال چگونه شما واقعا نمی کنترل فریم در پشته خود را. 

OK، اشاره گرها. همه حق است، بنابراین ایجاد اشاره گر. به یاد داشته باشید، آن را فقط ستاره تایپ کنید. بنابراین هر نوع داده ای که شما در حال رفتن به اشاره به. بنابراین این امر می تواند یک اشاره گر به یک int. این امر می تواند یک اشاره گر به کاراکتر. این می شود یک اشاره گر به یک شناور. پس از آن اساسا هر شما می خواهید آن را به اشاره به، ستاره است که چگونه اشاره گر شما اعلام، OK؟ 

اما پس از آن به وضوح می شود کمی روی حیله و تزویر زمانی که شما اشاره گر دارند یا شما ستاره هر. بنابراین اختلاف بزرگ است زمانی که شما declaring-- بنابراین ما باید تا some-- این طول می کشد برخی از ستاره بین المللی. بنابراین این برخی از اشاره گر است خواستار X به یک int، درست است؟ بنابراین به یاد داشته باشید چه می کند این این تماس های سیستم X. و این است که به برخی از آدرس، درست است؟ بنابراین اجازه دهید فقط می گویند این آدرس ما می باشد. اشاره گرها آدرس نگه دارید. پس چه می گوید این است که در این محل سکونت، ما در حال ذخیره سازی یک int. 

بنابراین یکی دیگر از راه ما می توانیم از فکر می کنم این است که این برخی از اعضای هیات است. ما واقعا به آن اختصاص داده نشده است هر چیزی، اما آن را فقط به یک int است. بنابراین ما می توانیم انجام دهیم این است اگر ما ستاره X برابر با 5، این می شود 5، OK؟ این می گوید به هر X است اشاره، پس به این آدرس و آن را به 5 برابر است. بنابراین ما 5 اختصاص به این آدرس، درست است؟ 

و پس از آن اگر شما این کار را، این به ما می دهد آدرس. این آدرس اپراتور است. پس چه آدرس X است؟ ما نمی دانیم. ما آن آدرس اختصاص داده نشده است. ما می گویند آن را در حال حاضر ما به some-- آن آدرس، بنابراین آدرس 4 است. و در واقع اگر ما از طریق چیزی به مثل این، نوع کاری که ما کردیم. پس از here-- من کار آن کمک می کند اگر شما بیرون کشیدن اشاره گر. اگر شما در آزمون خود را، من به شدت توصیه می رسم جعبه. 

پس این یکی از اولین، اعضای هیات ایکس معادل 5. این حالت فقط بدان معناست که ما باید برخی از محل در حافظه است که 5، درست است؟ و جدول ما در اینجا به ما می گوید که آن را در آدرس 0x04 است. و پس از آن ما برخی از اشاره گر ایجاد کنید. بنابراین اجازه دهید این شکستن در یک زمان. بنابراین این امر موجب ایجاد جعبه متوسط، درست است؟ آن را برای برگزاری برخی از آدرس آن. بنابراین این برخی از اشاره گر است. و این گچ واقعا کوچک است. بنابراین ما برخی از اشاره گر را در اینجا. و جدول ما به ما می گوید است که آدرس 0x08 است. سرد. و ما اختصاص آن را به آدرس X. 

به یاد داشته باشید، اشاره گر نگه آدرس، OK؟ بنابراین اگر ما می خواهیم به نگه X، ما استفاده از عملگر آدرس، که علامت، برای دریافت آدرس است از x است، که در این مورد، 0x04. و پس از آن اگر ما برخی از نسخه بین المللی، این فقط ایجاد برخی از جعبه های دیگر که دارای یک نسخه بین المللی نامیده می شود. و اگر ما انتساب آن را به this-- پس این است که اشاره به آن. بنابراین آن را می گوید به هر اشاره گر آدرس نگه می دارد. اشاره گر دارای این آدرس، بنابراین ما می خواهم بیش از اینجا بروید، و ما می گوییم، خوب، آنچه در آن است؟ این 5 است. بنابراین کپی 5 می شود. را حس؟ 

چه می شود اگر من سعی کردم به او واگذار این فقط به اشاره گر. چه اشاره گر در واقع برابر است؟ این فقط می تواند هر اشاره گر شامل، درست است؟ و پس از آن چه می شود اگر من این کار را کرد؟ چه کپی کن شود؟ 

رسید 0x08. ALLISON BUCHHOLTZ-AU: بله، آدرس اشاره گر ما است. هیچ بخشی از آن است که نیاز به دوباره توضیح داد؟ سرد. قطعا بسیار وجود دارد مشکل سرگرم کننده در یک مسابقه که ما می توانیم بیش از آن به شما می دهد بیشتر تمرین کنید. بچه ها از هفته گذشته می تواند به شما بگویم این بود که بد نیست. ما را از طریق تمام کردم نمودار، و هر کس بزرگ انجام داد. 

OK، به طوری که بررسی اجمالی نحو از اشاره گر. بزرگترین چیزی است درک اینکه چگونه برای ایجاد آنها، انجام ارجاع، و آدرس، OK؟ سرد. هر موضوع دیگر قبل ما را به عمل شیرجه رفتن. همچنین اگر ما در حال رفتن را از طریق مشکلات عمل و چیزی وجود دارد که شما می خواهید طراوات در، ما می توانیم این کار را انجام بیش از حد. آیا چیزی دارید؟ 

رسید ساختارها و لیست های پیوندی. ALLISON BUCHHOLTZ-AU: ساختارها و لیست های پیوندی، OK. بنابراین ساختمانها. ما در واقع در حال رفتن بیش از این که امشب بیش از حد. OK، بنابراین ساختمانها. ساختمانها اساسا فقط یک راه را برای شما به نگه چندین مقدار را از انواع مختلف. بنابراین با یک آرایه ما محدود به یک نوع داده. آرایه ما یا باید فقط اعداد، یا فقط کاراکتر، و یا فقط شناور. 

اما شاید شما به نیاز شامل بیش از آن. شاید شما نیاز به hold-- اگر شما در حال صحبت کردن در مورد یک دانش آموز، شما در حال رفتن به خانه خود، خود را شماره شناسنامه، سن، جایی که آنها زندگی می کنند، درست است؟ و همه کسانی هستند انواع مختلف از انواع. بنابراین شما می توانید ذخیره آن همه در یک آرایه. 

پس چه می توانید انجام دهید به شما می باشد می تواند یک ساختار، ایجاد که شما می توانید از فکر می کنم به عنوان شما خود نوع داده های شخصی. بنابراین به جای فقط داشتن وقفه و به جای فقط داشتن شناور، شما می توانید یک دانش آموز از نوع که تا همه از این زمینه ها در آن است. پس راه ما مقداردهی اولیه ساختمانها ما is-- در واقع از نوشتن من وحشتناک است، ما رفتن به انتقال به تایپ کردن. وو. 

OK، بنابراین اگر ما می خواهیم برای ایجاد یک struct-- من فقط رفتن به آن را در اینجا. بی اعتنایی به در اصلی هر که بعدا استفاده خواهد شد. بنابراین راه که می خواهید به انجام آن را با typedef struct است. و اجازه دهید فقط این دانش آموز تماس بگیرید چون این چیزی است که من استفاده میکنه. OK، بنابراین typedef بدان معناست که شما تعریف یک نوع جدید، OK؟ تفاوت های ظریف وجود دارد است به هنگامی که شما انجام فقط یک ساختار در مقابل یک ساختار typedef. برای تمام مفاهیم و اهداف، شما بچه ها تنها رفتن به فرض آنها حدود همان و فقط استفاده از typedef struct را در حال حاضر. آن را تبدیل راه در بیشتر آشکار خود را P تنظیم بعدی که آن تفاوت ها، اما من فکر نمی کنم شما نیاز به نگران است که در حال حاضر. من بسیار به جای شما بدانید که چگونه برای ایجاد یک مورد، آن دسترسی داشته باشید و به هر [؟ ارزش. ؟] 

یک نوع جدید از ساختار و ما خواستار آن دانش آموز. بنابراین پس از ما انجام می شود ایجاد این، برای تمام مفاهیم و اهداف، شما یک نوع به نام دانش آموز داشته باشد. و شما می توانید از آن فقط به عنوان یک نوع فکر می کنم مانند متوسط، و یا شناور و یا یک کاراکتر. این فقط نوع دیگری است، OK؟ 

بنابراین در این یکی، ما چه چیزی داریم؟ ما شاید نام. بنابراین شاید ما می خواهیم یک نام رشته. و ما شاید یک int که یک ID است. و ما دیگر در شماره تلفن است. و ما some-- اجازه دهید را ببینید. چه چیز دیگری ممکن داریم؟ ما برخی از رشته در خانه خود داشته باشد. تمام چیزهایی که یک دانش آموز است. 

بنابراین این موضوع باعث ایجاد یک ساختار در حال حاضر. پس چگونه ممکن است یک دانش آموز ایجاد می کنیم؟ اگر ما به برخی از متغیر است که رفتن به مورد واکر صحبت در اینجا، بنابراین ما have-- ما تنها رفتن به به این واکر. او نیاز به یک نوع. نوع شما چه بود؟ رسید دانشجو. ALLISON BUCHHOLTZ-AU: دانشجو. پس این فقط ایجاد یک شی شما می توانید که فکر می کنم تا به همه این چیزها. شما فقط یک دانش آموز واکر ساخته شده است. بنابراین در حال حاضر ما باید قادر برای تعیین این همه، درست است؟ بنابراین هر کسی به یاد داشته باشید که چگونه ما در یک ساختار دسترسی پیدا کنم؟ رسید دوره. ALLISON BUCHHOLTZ-AU: دوره دقیقا. بنابراین اگر ما می خواستیم به او واگذار او یک نام، ما می تواند انجام دهد. بدیهی است در این صورت، be-- این بخش در اینجا در اصلی، به طوری در واقع به من اجازه انجام این کار. این اعلام شده در بالا به طوری اصلی که ما می توانیم آن را در درون اصلی استفاده کنید. بنابراین در حال حاضر من می خواهم آن را به انجام ID، و ما فقط برخی از انجام وجود دارد، و پس از آن ما به یک خانه اختصاص دهید. بم. سرد. 

بنابراین در حال حاضر ما باید همیشه به دسترسی نیاز هر چیزی بعد on-- شاید we-- اگر ما تا به حال نیاز به دسترسی به هر چیزی، اجازه دهید فقط ID کپی اعضای هیات. و من می خواهم به کپی ID واکر به این. چگونه ممکن است من آن را انجام دهید؟ شما نیاز به دسترسی به درون واکر ساختار به [؟ به که برود؟] [؟ E؟]. و به همان شیوه است که ما اختصاص داده و آن را در اینجا، چگونه ممکن است که ما به آن دسترسی داشته زمانی که ما به خواهید را که ارزش به چیز دیگری؟ رسید Walker.id. ALLISON BUCHHOLTZ-AU: بله، دقیقا. به طوری که تقریبا همه شما باید برای ساختمانها را می دانم. شما فقط نیاز به فکر می کنم آنها را به عنوان متغیر دیگر. اساسا ایجاد خود نوع متغیر خود، OK؟ شما از آن استفاده کنید به اعلام متغیر به هیچ وجه. در اینجا واکر است که هنوز هم یک متغیر. این فقط به یک دانشجو در حال حاضر به جای نوع از نوع int نوع، یا یک رشته از نوع، یا یک کاراکتر را تایپ کنید. اگر یک راه آسان برای صحبت وجود دارد درباره ساختمانها، آن است که به معنای واقعی کلمه فقط ایجاد نوع داده خود را که شما اجازه می دهد تا به گروه تمام این های مختلف نوع داده ها با هم. آیا که حس می کند؟ OK. که با نقطه و دسترسی به. تقریبا همه شما نیاز دارید. 

OK، که در آن پاورپوینت من بود؟ در اینجا آن است. خب این عجیب و غریب است. AHA. OK، سرد. هر چیز دیگر و یا کار می کنیم می خواهند سر به تمرین می کنید؟ عمل؟ OK. بسیار جذاب است. من قصد دارم به خارج از این. اگر در هر نقطه در طول پرسش و تمرین، من خوشحال برای وصله پینه کردن هستم و رفتن را از طریق همه چیز. بنابراین من مسابقه صفر تا اینجا. اگر شما بچه ها می خواهید به جلو آن را بر روی کامپیوتر شما، فقط می خواهم را پنج دقیقه به فهرست را از طریق. شاید برخی از بالا را انتخاب کنید سوالات شما می خواهید برای رفتن. اگر شما بچه ها نمی تواند تصمیم بگیرد، ما فقط به آرامی شروع به کار از طریق آنها، اما من مطمئن هستم که وجود دارد در حال رفتن به برخی هستم سوالات است که شما به خصوص مشتاق به صحبت کردن در مورد و من از طریق کار با همه شما. بنابراین فقط به جلو و به پنج دقیقه. حرکت را از طریق. و این مسابقه از سال 2013 است. 

رسید صفر؟ 

ALLISON BUCHHOLTZ-AU: بله، مسابقه صفر است. ما در حال انجام یک مسابقه نمی مسائل. ما به انجام این کار در چند هفته. همچنین برای کسانی از شما که در اواخر آمد، ما باید آب نبات، پس شما بچه ها می خواهید آب نبات؟ 

رسید مطمئنا. 

ALLISON BUCHHOLTZ-AU: من فقط رفتن به تصویب اطراف. با سلام، اگر شما بچه ها اینجا اوایل، شما آب نبات بیشتری دریافت کنید. این خوب است. بن، آیا شما می خواهید آب نبات؟ شما می خواهید برخی از این؟ همچنین اسنیکرز اگر وجود دارد هر کسی می خواهد اسنیکرز. من آنها را در اینجا و اینجا را ترک کنند. احساس رایگان. آیا شما می خواهید دیگر؟ رسید تمام مجموعه. متشکرم. 

ALLISON BUCHHOLTZ-AU: و من تا به حال خوب شمع کمی وجود دارد در آغاز. شما بچه ها می کنید را به مسابقه و من به یک حزب مسابقه درجه بندی. این هرج و مرج است. 900 آزمون. این رفتن به بسیار سرگرم کننده. رفتن به بزرگ است. من کاملا مطمئنم که که یکی هستم از بزرگترین باند کارکنان شب سال است. تا به هر کسی مسابقه صفر انجام از سال گذشته هنوز از روی کنجکاوی؟ 

رسید بخشی از آن. 

ALLISON BUCHHOLTZ-AU: بخش هایی از آن، OK. سوال در هر یک از آنها را دارید؟ رسید من در حال حاضر به ساعات اداری رفت. با تشکر از شما هر چند. ALLISON BUCHHOLTZ-AU: خب، امیدوارم هنوز هم نوع کمک کننده باشد. هنگامی که شما برای رفتن به ساعات اداری برای که؟ رسید TF من آنها را این بعد از ظهر بود. ALLISON BUCHHOLTZ-AU: آه. چه کسی TF شما چیست؟ رسید فرد [؟ Wujaya؟]. ALLISON BUCHHOLTZ-AU: بسیاری از TFS وجود دارد. بنابراین بسیاری از. همه راست. هر کسی هر گونه برای شروع که من می توانم نوشتن که ما می خواهیم به کار بر روی؟ من فرض اشاره گر یکی با میز. برو برای آن. 

رسید شاید یکی سوئیچ. ALLISON BUCHHOLTZ-AU: بنابراین تعداد 12؟ من فرض شماره 8 و 9 احتمالا مردم آنهایی که می خواهند به بیش از. 

رسید و 10 و 11. 

ALLISON BUCHHOLTZ-AU: و شما می دانید بچه ها شما یک صفحه از یادداشت، درست است؟ 

رسید: آره، چه می ما مجاز به قرار دادن بر روی آن است. 

ALLISON BUCHHOLTZ-AU: شما اجازه برای قرار دادن هر چیزی که شما می خواهید. و می توان آن را تایپ. تا آنجا که من به یاد داشته باشید، ما تایپ شده است. 

رسید شما می توانید انجام دهید بازگشت و هر دو طرف؟ 

ALLISON BUCHHOLTZ-AU: آره، هر دو طرف. بنابراین چیزی شبیه به پشته و [؟ پایان دادن به عقب؟] پشته، در حال اجرا بار. مفید است. همه چیز شاید کمی در مورد اشاره گر به شما یادآوری. نحو برای چیزهایی. داشتن درست مثل یک اسکلت برنامه می تواند فوق العاده مفید است. من می دانم که من همیشه فراموش دقیقا همان چیزی است من قرار بود برای اعضای هیات اصلی ارسال، چون من همیشه فقط کپی کنید رب از مجموعه P قبلی من و یا آن را در حال حاضر وجود دارد، بنابراین من هرگز واقعا آن را نوشته است، بنابراین داشتن است که می تواند فوق العاده مفید است. 

خوب، پس چرا ما نمی با شماره 8 پس از آن شروع می شود؟ همه راست. OK. بنابراین برنامه های زیر را در نظر بگیرید. بنابراین بدیهی است زمانی که ما می بینیم اشاره گر، آن را احتمالا یک ایده خوب برای شروع به کشیدن، درست است؟ من می خواهم بدانم که در آن همه من قطعات بزرگی از گچ رفت. این نوع از آزار دهنده است. 

بنابراین ما باید در اینجا برخی از عملکرد مبادله که رفتن را به در دو اشاره گر. بنابراین در این مورد، آنها باید واقع تعویض شود همه چیز در مقابل مبادله اصلی ما تابع است که تنها در نسخه گرفت. پس چه آن را به انجام is-- اجازه دهید با شروع اصلی، به دلیل این که در آن 1 است. 

بنابراین ما باید برخی از اعضای هیات * 1. ما برخی از Y که به 2 برابر است. و سپس ما به برخی از مبادله که رفتن را به آن. و اجازه دهید ببینیم که چه چیزی ما را در اینجا. و در table-- ما آه پسر. چگونه من رفتن به انجام این کار؟ من قصد دارم به رسم جدول من در اینجا. به سختی ساخت آن وجود دارد. به سختی آن را ساخت. 1، 2، 3، 4، 5، 6، 7. و آنها به ما می دهد که 1 1 و 1 2 است. سرد. بسیار جذاب است. بنابراین 3. و به [وجود دارد؟ 1.؟] 

همه راست. و سپس آدرس X 0x123 می باشد. و Y Ox127 است. سرد. همه راست. من می خواهم به شما بچه ها در این کار برای کار بر روی آن فقط like-- با مردم در اطراف شما. ای کاش من گفته بود که در حالی که من راه اندازی. کار بر روی آن. سعی کنید و کار بر روی آن توسط خودتان را برای چند دقیقه، و پس از آن من در آن با شما کار خواهد کرد. از آنجا که تنها راه شما واقعا رفتن به یادگیری با انجام آن را به خودتان. هیچ نگرانی. موفق باشید. 

OK، چرا ما نمی آرامی شروع به کار از طریق این. بنابراین هر کس می شود بعد از خط یک، X 1 است. پس از خط دو، X و Y 1 و 2، درست است؟ سرد. بنابراین خط سه که در آن همه چیز است جالب البته. 

بنابراین آنچه که ما در اینجا انجام داده ایم است ما در حال حاضر عوض میکنه. ما می گوییم که x و y دارای آن نقاط، و یا آنها را به آدرس x و y، درست است؟ بنابراین در این مورد، سه، چه مقدار است؟ در گذشت شده بود، داده شده است ارزش آدرس X، درست است؟ 

رسید: 1؟ 

ALLISON BUCHHOLTZ-AU: پس ما آن را به X اضافه کنید؟ آدرس X چیست؟ 

رسید 0x123. 

ALLISON BUCHHOLTZ-AU: دقیقا. اما آنچه در واقع به اشاره؟ اگر ما به ارجاع شد، چه ارزش آن را به ما بدهد. رسید: 1. ALLISON BUCHHOLTZ-AU: این را ما 1 را، به خاطر آنچه ما در حال گفتن است این رفتن آدرس، به ما بگویید چه مقدار است. پس چه می شود ب؟ 

رسید 0x127. ALLISON BUCHHOLTZ-AU: دقیقا. پس از آن آدرس Y است. و پس از آن چه [؟ ارجاع؟ ؟] رسید 2. ALLISON BUCHHOLTZ-AU: OK، بنابراین در حال حاضر چهار. ما گفت است equal-- خوب حالا ما انجام اعضای هیات موقت به ستاره برابر است. پس چه تغییرات؟ تنها یک چیز وجود دارد که تغییر در اینجا. آنچه در آن است؟ 

رسید موقت. ALLISON BUCHHOLTZ-AU: دما. بنابراین ما می توانیم تمام این بازنویسی. یک استراتژی خوب برای این است فقط بدانند چه تغییرات، به دلیل اینکه اکثر اغلب تنها چیزی که وجود دارد رفتن به تغییر در هر نقطه داده، OK؟ بنابراین ما موقت اختصاص داده شده است. 

در حال حاضر نقطه بعدی ما، پنج، ما ساخته شده اند ستاره برابر به ستاره ب. پس چه در حال حاضر تغییرات؟ 

رسید ستاره. 

ALLISON BUCHHOLTZ-AU: ستاره، به طوری که هر چیز دیگری به همان باقی می ماند. و چه ستاره برابر است؟ 

رسید 2. ALLISON BUCHHOLTZ-AU: 2. دوست داشتنی. بسیار جذاب است. OK و سپس در حال حاضر ما شروع ب به دما برابر است. بنابراین تنها چیزی که تغییر ستاره B است. هر چیز دیگری به همان باقی می ماند. و چه ستاره B برابر در حال حاضر است؟ و جدول را کامل کردهاید. از آنجا که در حال حاضر در پایان، اگر ما می گویند X و y، ما می دانیم که در این point-- ما می دانیم که وقتی ما تغییر ستاره تا 2، آنچه که انجام آن است گفت: OK، در آدرس 0x123 در اینجا، آن را تغییر دهید. در حال حاضر این 2 بود. و سپس در این مرحله، ما گفت: OK، به ستاره ب. بنابراین به آدرس رجوع کنید 0x127 و 1. بنابراین در حال حاضر در پایان زمانی که بسیار ما در واقع برای اصلی بازگشت، ما در واقع باید که X است به 2 و y برابر با 1 برابر است. هر کس خوب با آن؟ OK، سرد. شماره 9. شما بچه ها در این کار می کنند. من قصد دارم به راه اندازی یک هیئت مدیره بنابراین ما می توانیم از طریق آن جلب می کنم. آن خواهید بود یک انفجار. جدول بزرگ می تواند واقعا ترسناک، من می دانم. اما اگر شما فقط آنها را در یک ردیف یک زمان، آنها بسیار کمتر ترسناک است. همه راست. 

بنابراین شما می دانید که این خواهد شد که از طریق اصلی اول، سمت راست رفته؟ مقدار دهی اولیه x و y و سپس سعی می کند به آنها مبادله. بنابراین حتی مبادله بالا، واقعی راه آن می رود که ما در حال رفتن را از طریق اصلی، و سپس آن را خواستار تا به مبادله، همه درست است؟ پس همه می دانند که. 

پس که یکی از شما انجام بچه ها می خواهید برای شروع با؟ آیا کسی واقعا مطمئن در مورد یکی از این؟ و یا حتی نیمه مطمئن هستید؟ چرا ما با X شروع می شود؟ چه ما فکر می کنیم X است؟ 

رسید: 1. ALLISON BUCHHOLTZ-AU: 1. پس چرا 2 است. و دلیلش این است که تفاوت بزرگ در اینجا این است که ما تنها هستند عبور نسخه در، درست است؟ ما از مرجع عبور نیست. بنابراین حتی در پایان این برنامه x و y ثابت مانده اند، چرا که آنها فقط کپی در تابع مبادله هستند. آنها در واقع تغییر دهید، درست است؟ 

بنابراین آنچه در مورد A، B، و دما؟ 

رسید ب است. 

ALLISON BUCHHOLTZ-AU: B است. بنابراین در این مورد، یک بود x، است که 1، درست است؟ بنابراین در اینجا، اجازه دهید از طریق آن راه رفتن. بنابراین در آغاز، و B 1 و 2 و تعریف نشده است. بنابراین در اصل موقت می شود اختصاص به یک، به طوری که دمای 1 است. برابر با B است، بنابراین ما 2، و ب به دما برابر است. در حال حاضر ما 1. 

رسید در گذشته یکی از آن تعویض علامت X و Y علامت. دقیقا چه معنا است؟ ALLISON BUCHHOLTZ-AU: بنابراین این بدان معناست که شما توسط مرجع عبور. به طوری که معنی است که شما در واقع هستید عبور در آدرس که در آن x و y ذخیره می شود. رسید اما تو نمی انتقال آدرس. ALLISON BUCHHOLTZ-AU: شما نیست انتقال آدرس. شما مبادله آنچه در درون آنها. مانند آنچه که در آن آدرس، و به همین دلیل کار می کند. در مقابل در این برنامه در اینجا چه شما در حال انجام است شما ایجاد کپی. بنابراین شما باید x و y که وجود دارد به عنوان متغیرهای خود را اینجا ببینید. اما پس از آن زمانی که شما عبور آنها را به مبادله، آن را به عنوان اگر شما در حال ایجاد این مجموعه کامل دیگر. بنابراین شما در واقع هرگز هستید X و y لمس کردن. 

رسید اگر علامت X همان چیزی است که در آدرس X، چه ستاره X باشد؟ 

ALLISON BUCHHOLTZ-AU: علامت X است آنچه در آدرس X، پس از آن به خوبی star--، در این مورد، X یک اشاره گر نیست. رسید آه، OK. بنابراین شما فقط انجام این کار زیرا این یک اشاره گر نیست. ALLISON BUCHHOLTZ-AU: درست است. شما تنها می توانید انجام دهید ستاره چیزی است که یک اشاره گر است. شاید شما می توانید آن را به انجام این کار همه چیز نه، اما شما که کامپایل انجام این کار همه چیز دیوانه اتفاق می افتد. و من دقیقا نمی مطمئن شوید که چه اتفاقی خواهد افتاد. شما همیشه می توانید را آدرس چیزی، اما شما نمی توانید ارجاع چیزی که یک اشاره گر نیست. در صورتی که حس می کند، که تمایز خوب داشته باشند. 

بنابراین خیلی بد نیست، درست است؟ جدول هستند امیدوارم گرفتن کمی کمتر ترسناک است. همه راست. آه، آنهایی که سرگرم کننده است. بنابراین در حال حاضر، نوشتن کد خود را. بنابراین من قصد دارم به شما اجازه بچه ها کار می کنند در این مدت حدود چهار دقیقه، و پس از آن ما می توانید صحبت کنید در مورد راه به آن نزدیک شود. احساس رایگان برای صحبت با مردم در اطراف شما. همچنین جالب است. آن را مانند یک دختر است بخش در حال حاضر. بسیار هیجان انگیز است. به جز چانگ. اما چانگ واقعا بخشی از بخش نیست. بسیار جذاب است. کامل است. بنابراین من به شما یک زن و شوهر نکات را. در مورد جایی که شما باید بیش از یک شخصیت، که در آن شما چیز دیگری مثل 123 یا 1000 چیزی، شما باید قادر به حلقه از طریق تبدیل و هر یک از آن. بنابراین یک زن و شوهر وجود دارد شما می توانید از راه های است که انجام دهید، اما شما قطعا رفتن به برای حلقه در جایی در آنجا به حلقه از طریق آنها، که نوع مانند سادگی حتی اگر با شما تماس strlen، که نوع مانند آه شاید شما مایل به استفاده از طول رشته در برخی از راه. 

همه راست. بنابراین چه چیزی شما بچه ها فکر می کنم ممکن است یکی از اولین چیزهایی که ما می خواهیم انجام دهیم؟ یک زن و شوهر وجود دارد در مورد در اینجا ما باید به حساب، درست است؟ در هر دو صورت ما چیزی که تهی. چه داریم؟ موارد. تهی. ما در مورد آن است چیزی غیر از 09، درست است؟ بنابراین اجازه دهید می گویند که این حروف. یا ما باید در مورد این که معتبر است. سه مورد از فکر می کنم. پس کدام یک به نظر شما ممکن است ساده ترین فرد برای مراقبت از اول؟ رسید تهی. ALLISON BUCHHOLTZ-AU: در مورد تهی. پس چه کار می کنیم که وجود دارد؟ رسید [نامفهوم]. ALLISON BUCHHOLTZ-AU: آره. و آنچه من می خواهم به انجام این کار؟ 

رسید بازگشت 0. 

ALLISON BUCHHOLTZ-AU: دقیقا. بسیار جذاب است. OK. بنابراین در حال حاضر مورد است که آن را تا به حروف و مورد که این معتبر است. ما در واقع می تواند مراقبت را این در یک حلقه، OK؟ بنابراین یک راه برای it-- انجام آنچه ممکن است یک راه ساده برای بررسی اگر آن را معتبر. ما را مجبور به رفتن را از طریق هر حرف و انجام چه؟ 

رسید چک کنید اگر آن را in-- 

ALLISON BUCHHOLTZ-AU: راست، شما می توانید چک کنید اگر بین 0 و 9 است، درست است؟ و پس از آن در مورد که این معتبر، ما هستیم رفتن برای پایان دادن به تکرار از طریق رشته ما به هر حال، درست است؟ پس چرا ما نمی کنید و سعی کنید ترکیب آنها را به یکی. ما قصد داریم به تکرار از طریق رشته، و به عنوان ما انجام این کار، ما در حال رفتن به اولین انجام یک بررسی برای دیدن در صورتی که نامه و یا اگر که شخصیت معتبر است. اگر از آن است، ما در حال رفتن به انجام عملیات که ما نیاز به تبدیل آن. در غیر این صورت آن را بازگشت 0، درست است؟ 

بنابراین قبل از ما انجام این کار، ما احتمالا می خواهید برخی از متغیر که ما می توانیم در پایان بازگشت که برای رفتن به ارزش واقعی ما است. بنابراین ما در حال رفتن به مقداردهی اولیه برخی از ارزش به 0. و این که چگونه شروع کنیم. بنابراین من قصد دارم به خلاصی از این. پس چگونه ما را به رفتن تکرار از طریق این رشته. رسید برای حلقه. ALLISON BUCHHOLTZ-AU: برای حلقه. بنابراین آنچه که برای ما؟ 

رسید من 0 است. ALLISON BUCHHOLTZ-AU: MM-HM. و آنچه ما تا تکرار؟ 

رسید طول STR از بازدید کنندگان. 

ALLISON BUCHHOLTZ-AU: OK، در حال حاضر به یاد داشته باشید یک راه بهتر وجود دارد. [نامفهوم]. 

رسید: بله، ما می توانیم انجام N برابر. ALLISON BUCHHOLTZ-AU: دقیقا. 

رسید من کمتر از n است. ALLISON BUCHHOLTZ-AU: و چرا ما می خواهیم را به انجام این کار؟ آیا دلیل شما به یاد داشته باشید؟ رسید ما باید آن را دوباره حساب. ALLISON BUCHHOLTZ-AU: Becasue این روش شما تنها باید برای محاسبه strlen یک بار. اگر شما من کمتر از strlen است بازدید کنندگان، که به معنی آن را مجددا طول هر زمان اجرای حلقه، است که هزینه های زیادی نمی انرژی، اما آن را عمل بهتر را امتحان کنید و انجام کارهایی مانند است که یک بار. مگر در مواردی که شاید شما یک رشته دیوانه است که در هر تکرار در حال تغییر. اما اگر آن را به ماندن در همین حال، آن را ذخیره کنید. همه راست. و پس از آن من به همراه به همراه. بسیار جذاب است. ما در راه ما هستند. رسید واقعا به سرعت. اول، پس بیایید ما می گویند فقط آیا من کمتر از strlen از بازدید کنندگان، آنها ما را در طراحی درجه بندی در تمام و یا فقط صحت؟ آنها نیست. ما در درجه بندی صحت برای آزمونها تا آنجا که من می دانم. من می توانم یک در کامل را ندارد تضمین، اما در بیشتر قسمت ها، اکثریت قریب به اتفاق صحت است، زیرا شما تحت بسیاری از محدودیت زمانی است. طراحی به طور خاص به این معنی است شما هم به فکر می کنم درباره ظرافت از وضعیت شما. 

OK، بنابراین ما از طریق تکرار. بنابراین ما نیاز به هر دو چک به ببینید اگر این شخصیت معتبر است یا اگر ما می تواند انجام ما معمولی است [؟ به من؟] تابع. ما می توانیم در مورد نگران چه است که در یک ثانیه. پس چرا ما نمی take-- اگر هر کسی می تواند فکر می کنم در مورد یک راه برای بررسی به ببینید اگر این معتبر است. ما می دانیم که آن را به برخی از شرط، درست است؟ و به یاد داشته باشید این است در ASCII، بنابراین چگونه ممکن است ما می بینیم اگر آن را نمی 0،1، 2، 3، 4، 5، 6، 7، 8، 9 و یا. رسید اگر آلفا. 

ALLISON BUCHHOLTZ-AU: بنابراین اگر آلفا را تنها می دانم که اگر آن نامه دهید. و اگر آنها یک نماد به ما، آن را هنوز کاملا نمی رفتن به تیک بزنید. بنابراین اگر شما خود را بالا بکشد ASCII جدول، ما می دانیم که 0 تا 9 در یک بخش هستند. من شماره که آنها بگو متناظر با در صورت امکان. رسید 40. 

ALLISON BUCHHOLTZ-AU: بنابراین در محدوده مثل 40-- رسید شاید. 48 تا 57. من مطمئن نیستم. 

ALLISON BUCHHOLTZ-AU: 40-57؟ 

رسید 48، من فکر می کنم. ALLISON BUCHHOLTZ-AU: 48 تا 57. بنابراین ما می دانیم که کسانی که ASCII symbols-- اگر مقدار ASCII است بین 48 و 57، آن معتبر نیست، درست است؟ بنابراین می تواند استفاده می کنیم که به مزیت ما احتمالا؟ چگونه می خواهیم برای به دست آوردن این نامه، برای نخستین بار؟ چگونه دسترسی به ما این به این شخصیت؟ 

رسید به براکت من. 

ALLISON BUCHHOLTZ-AU: MM-HM. از آنجا که ما می توانیم از فکر می کنم رشته به عنوان آرایه، به یاد داشته باشید. بنابراین چه چیزی ما می خواهم بگویم؟ ما می خواهم بگویم اگر این is-- من به شما یک اشاره به من بدهید. این کمتر از. چه به آن فکر می کنم شما نیاز به کمتر از؟ رسید 57؟ 

ALLISON BUCHHOLTZ-AU: 47، درست است؟ بلکه نشان دهنده است که به شما به عنوان 0 در تک [؟ پره؟]، چرا که شخصیت 0. شما همچنین می تواند قرار داده 47. داشتن جدول ASCII، به عنوان می بینید، تنها چیزی است شما باید در برگه مسابقه خود را داشته باشد. 

بنابراین اگر این مورد است، اگر آن را کمتر از 0-- نه لزوما و. آن را تنها یا رفتن به کمتر یا بیشتر از 9. بنابراین می تواند به شما در پر کردن این آخرین برای من؟ بنابراین یا از من چه است، رئا؟ 

رسید: بیش از 9. 

ALLISON BUCHHOLTZ-AU: وجود دارد. آیا این را حس می کند به همه، ما چگونه وجود دارد؟ این مشکلات، آنها مانند یک بار شما دیدن راه حل، آن را مانند آه، OK. و این است که چرا عمل به شما کمک خواهد کرد. OK، بنابراین ما بازگشت 0. دوست داشتنی. همه راست. در غیر این صورت چه می خواهیم کاری انجام دهید؟ این قسمت جالب که در آن یک کمی بیشتر مانند ریاضی در مقابل CS به نظر من. آیا کسی یک ایده ما چگونه ممکن است انجام این کار؟ بنابراین نکته مهم این به تحقق بخشیدن به شخصیت اول است ما در حال گرفتن است برای رفتن به در بالاترین مرتبه رقمی، درست است؟ بنابراین اگر ما به دنبال در تبدیل 123، اولین بار ما تکرار در حال رفتن به 1، اما ما نیاز که به 100 در پایان، درست است؟ بنابراین یک چیز شما می توانید انجام دهید این است که با هر رقمی بعدی شما را، شما ارزش خود را با 10 ضرب، به طوری که در زمانی که شما رسیدن به پایان، همه چیز شده است تغییر به سمت بالا، درست است؟ 

بنابراین اولین بار اجرا می کنید آن، شما باید 1 به عنوان ارزش خود را. بار دوم که شما آن را اجرا کنید، شما ارزش خود را با 10 ضرب. آن را به روز رسانی به طوری که آن را در حال حاضر 10، و شما را در مقدار بعدی خود را اضافه کنید. و سپس شما را چند برابر است که توسط 10 و اضافه بر ارزش بعدی خود را. و این است که چرا آنها به این می گویند خیلی شبیه تست یک الگوریتم ریاضی در مقابل CS، اما من پرت شدن. من آزمونها ارسال نمی شود. 

بنابراین چیزی که ما می توانیم انجام دهیم ما است می گویند بار ارزش برابر با 10. پس این است که رفتن به تغییر رقمی خود را یک بار در هر زمان. و پس از آن ما فقط می خواهم برای اضافه کردن. ما می خواهیم برای اضافه کردن در چه ما فقط، درست است؟ پس چگونه ما در واقع تبدیل ما شخصیت ASCII به تعداد که آن را نشان دهنده؟ 

بنابراین ما می دانیم که 0 تا 47 برابر است، درست است؟ بنابراین اگر 0 است 47، چه که ما را مجبور به انجام آن در واقع، آن را یک نوع int از 0؟ 

رسید این 48. ALLISON BUCHHOLTZ-AU: 48؟ متأسفم. ما می تفریق 48، درست است؟ به یاد داشته باشید ریاضی ASCII؟ ما می توانیم آنها را تنها به درمان درمان مانند اعداد طبیعی است. اگر شما آنها را درمان مانند اعداد، آنها تبدیل اعداد به طور موثر. بنابراین اگر ما از من، که اجازه دهید می گویند در این مورد برابر با 0 است. پس از من در این مورد خواهد بود ASCII-- اعضای هیات ASCII برای این امر می تواند 47. بنابراین ما می تواند subtract-- یا 48. شما می توانید این کار را انجام، یک راه است. آیا کسی بهتر می دانید راه ما می تواند 48 انجام دهید؟ ما فقط گفت: 0 is-- به رفتن ASCII شما می توانید نقل قول 0 انجام دهد. بنابراین آن را نوع را حس چگونه این کار می کند؟ 

رسید در این نقطه، مقدار 0 است چرا که حتی اگر شما آن را ضرب 10، شما با شروع از صفر، بنابراین باید آن را روشن کرد؟ 

ALLISON BUCHHOLTZ-AU: بنابراین در این حالت، شما می خواهم به آن را چند برابر قبل از اینکه شما اضافه کنید، چرا که در این صورت، بله، آن را هنوز be-- اشاره گر من از دست رفته است. ارزش در این مورد، اولین زمان ما آن را اجرا صفر خواهد شد. بنابراین شما فقط با اضافه کردن در آن رقم اول. دفعه بعد چه مهم است این است شما تکرار، شما می خواهید به آن تغییر تا قبل از اینکه شما اضافه رقم بعدی خود را در. آیا این روشن برای شما؟ OK. 

گاهی اوقات شما به دریافت عجیب و غریب چیزهایی mathy تر. اگر بیشتر از شما تا به حال این، شما هنوز هم به get-- شما در حال رفتن به انجام خوبی. اعتبار جزئی است بسیار چیز بزرگ در آزمونها CS50. بنابراین نوشتن آنچه شما می دانید. اگر شما همه چیز به جز اینجا، شما هنوز هم به انجام واقعا خوب مشکل است. از آنجا که شما در حال نشان دادن، OK، من تقریبا می دانم. من می دانم که من باید از طریق تکرار. من می دانم آنچه که من نیاز به تیک بزنید. من فقط کاملا نمی چگونه باید برای تبدیل آن. شما در حال رفتن به OK. بله، شما در حال رفتن به از دست دادن یک زن و شوهر نقاط، اما شما هنوز هم برای به دست آوردن تعداد زیادی از نقاط برای چیزی مانند که اگر شما از دست رفته این دو خط. من می مانند OK، این فرد است می داند آنچه را که آنها انجام می دهند. ریاضی سخت است. بنابراین من می گویم شما می خواهم خوب است. 

خوب، پس شما بچه ها آماده سعی کنید strlen با اشاره گر کن که شما کارشناسی ارشد اشاره گر هستند؟ بنابراین من به شما اجازه بچه ها کار می کنند در که برای کمی. اگر کسی نیاز به یک یادآوری. بنابراین شما می خواهید به استفاده از اشاره گر حساب، و پس از آن اگر به null است، اجرای شما باید 0 بازگشت. چیزهایی مثل این است که شما را واقعا خوشحال فقط strlen تماس بگیرید در پایان روز. من فکر می کنم این یکی ممکن است کمی آسان تر از یکی از آخرین، که خوب است. من به شما بچه ها یک دقیقه را، و سپس ما را از طریق آن کار می کنند. و پس از آن ما را وادار به رفتن به سوئیچ. 

OK، بچه ها آماده است؟ شاید کمی. بنابراین من به شما به شما داده ام دو گزینه، درست است؟ در هر دو صورت برای null به و بازگشت 0 اگر از آن است، و یا در واقع محاسبه طول. بنابراین کسی که می خواهد به ارسال برای null به؟ برو برای آن. 

رسید اگر پرانتز ها برابر برابر بازگشت پوچ 0. ALLISON BUCHHOLTZ-AU: دوست داشتنی. من دوست دارم زمانی که نیمی از مشکل خود را است فقط برای چک کردن تهی. من با شما بچه ها می دانید آخرین هفته من مانند چک برای پوچ بود به معنای واقعی کلمه هر زمان. OK، so-- 

رسید اگر بازگشت 0 تنها یک خط است، ما هنوز هم نیاز به آکولاد؟ 

ALLISON BUCHHOLTZ-AU: شما به لحاظ فنی نمی باید آنها را تا زمانی که شما سازگار است. این یک تمرین خوب فقط در عادت دریافت استفاده از آکولاد، اما از نظر فنی هیچ. شما آنها را برای یک خط نیاز ندارد. ما فقط تمایل به آن را توصیه برای مردم شروع به برنامه است. 

بنابراین در حال حاضر آنچه که ممکن است ما می خواهیم انجام دهیم که اینجا هستید؟ بنابراین در حال حاضر ما می دانیم که رشته ما معتبر است. ما می خواهیم به نگه داشتن محاسبه طول. چه احتمالا اولین چیزی که ما می خواهیم انجام دهیم؟ 

رسید ایجاد یک اعضای هیات که طول است. ALLISON BUCHHOLTZ-AU: دقیقا. رسید و ما می خواهیم که آن را به؟ ALLISON BUCHHOLTZ-AU: 0. کامل است. همه راست. در حال حاضر چه کار می خواهید انجام دهید؟ این است که واقعا بخش عمده ای از آن است. برو برای آن. 

رسید بنابراین احتمالا شما برای حلقه. و پس از آن از زمانی که شما تماس بگیرید شما گرفتن آدرس از اولین چیزی که، شما که شروع با من برابر با 0. و پس از آن تا زمانی که X به علاوه من است بازگشت بریده بریده 0 نیست. ALLISON BUCHHOLTZ-AU: نابودگر تهی. رسید نابودگر تهی. سپس شما یک به طول اضافه کنید. 

ALLISON BUCHHOLTZ-AU: آره. OK، بنابراین اجازه می دهد که به نوبه خود که به کد بسیار بتن می باشد. اما این ایده عالی است. این دقیقا همان چیزی است که ما انجام می دهند. ما قصد داریم به تکرار از طریق با اشاره گر. بنابراین آنچه که ما می خواهیم انجام دهیم است به جای یک int در اینجا، چون ما هستیم اشاره به آن را ندارد. ما با اشاره به آغاز رشته، که شروع به بودن آدرس، درست است؟ 

بنابراین ما می خواهیم یک اشاره گر. بنابراین ما در حال به برخی از ستاره کاراکتر، به دلیل آن را به بازدید کنندگان ما مربوط، درست است؟ بنابراین این برخی از نقطه که ما در حال آماده سازی است از شروع رشته، OK؟ بنابراین اجازه دهید فقط آن را به من. اگر آن را از شروع رشته، چه چیزی آن رفتن به اختصاص داده؟ 0. ما می خواهیم آن را به شروع از رشته ما. چه نشان دهنده شروع رشته ما که به ما داده شده بود؟ 

رسید فقط بازدید کنندگان. 

ALLISON BUCHHOLTZ-AU: S. بنابراین این امر موجب ایجاد اشاره گر جدید که نشان دهنده شروع رشته ما، OK؟ راه دیگر برای آن فکر می کنم مثل اینجا آرایه ما است. که رشته ما، S است. بنابراین اجازه دهید می گویند این است که نقطه اول، و این 0x4 است. 04. این بازدید کنندگان ما، که بر آن است که آدرس است. و ما فقط ایجاد یک دیگر به نام من که فقط به همان چیزی که اشاره دارد. بنابراین هر دو آنها فقط اشاره از شروع رشته ما. این فقط یک نمایش گرافیکی است. 

بنابراین در حال حاضر آنچه ما می خواهیم انجام دهید این است که ما می خواهیم به تکرار شرایط ما برای شمارش از طریق رشته ما. در حال حاضر خرید. کردم به مغازه، بچه ها. آیا ما می خواهیم به روز رسانی تا ما رسیدن به نابودگر تهی، درست است؟ پس چه ممکن است که شبیه؟ آیا ما می خواهیم من، یا انجام ما می خواهیم ستاره من سوال است؟ آیا نابودگر پوچ آدرس یا چیزی واقع در آدرس؟ واقع در آدرس، درست است؟ 

بنابراین ما ارجاع هر آنچه نیاز در اینجا، چرا که این تنها آدرس است. در واقع از آغاز دریافت ما به این نیاز ارجاع به طوری که ما در واقع آنچه در این مقام اول است. بنابراین اگر ما ستاره من، چه آیا ما نمی خواهید آن را برابر با؟ رسید بازگشت بریده بریده؟ 

ALLISON BUCHHOLTZ-AU: وجود دارد. آیا این را حس برای همه؟ ما باید برای رفتن به رشته ما و مطمئن شوید که آن را پایان نیست. و پس از آن ما فقط می تواند شبیه به این به روز رسانی. به روز رسانی عادی. بنابراین تا زمانی که این مت، چه باید انجام دهیم؟ 

رسید به علاوه به علاوه طول. 

ALLISON BUCHHOLTZ-AU: MM-HM. و سپس بعد از حلقه for پایان، چه می خواهیم برای بازگشت؟ رسید طول؟ ALLISON BUCHHOLTZ-AU: طول. شما بروید وجود دارد. بدیهی است که گوشت از این یکی درک این حلقه. آیا هر کس که چگونه است که کار می کرد؟ من خوشحالم که بیش از آن دوباره هستم. 

رسید دوم بخشی، بنابراین ستاره من وجود دارد، که آدرس first-- است ALLISON BUCHHOLTZ-AU: این آدرس نیست. در آنچه در. رسید که در واقع در آن وجود دارد. ALLISON BUCHHOLTZ-AU: این آنچه در واقع وجود دارد. پس این است که اجازه saying-- من این را بهتر است. بنابراین این 0x04 است، و من فقط رفتن می گویند من قصد دارم به این نام من است. OK. بله، من می دانم من امشب بررسی مسابقه داشته باشد. بسیاری از بررسی مسابقه. بنابراین اجازه دهید می گویند این رشته نام من، آلیسون است. کمی کثیف است، اما وجود دارد. و S نشان دهنده محل که در آن رشته شروع می شود، بنابراین من قصد دارم به این real-- این آدرس است، که در آن رشته آغاز می شود، درست است؟ 

بنابراین آنچه ما در اینجا این است که ما به خواهید استفاده از اشاره گر به تکرار از طریق. بنابراین ما برخی از اشاره گر ایجاد، من، که همچنین از شروع رشته برابر است. و در هر نقطه، ما به خواهید ادامه رفتن را از طریق آرایه در اینجا تا زمانی که ما آمار نابودگر تهی. بنابراین ما همیشه می خواهیم به بررسی آنچه در هر یک از این آدرس. 

بنابراین ما ارجاع من، به طوری که اولین بار که ما آن را ما انجام می دهیم می گویند، OK، چه در آدرس 0x04؟ این است. OK، ما خوب است. طول افزایشی. حرکت به یک بعدی. بنابراین به یاد داشته باشید i-- اشاره گر افزایش توسط اندازه هر آنچه که آنها در حال اشاره به. بنابراین در این مورد، از آن کاراکتر، آن را با یک به روز رسانی. بنابراین در حال حاضر ما قصد داریم تا در 5 نگاه کنید، که به معنی آن را در اینجا. بنابراین آن را می گوید خوب، به 0x05 بروید. چه در وجود دارد؟ این L است. و آن را نگه دارید انجام آن تا زمانی که این یکی. و آن را می گوید خوب، چه چیزی در هر آدرس از این است؟ نابودگر تهی، OK. خروج. و فقط طول گشت. از آنجا که شما نیاز دارید چیزی است که در واقع در که آدرس، آدرس خود را. 

مکان های بسیار کمی وجود دارد که در آن شما در واقع نیاز به آدرس. بسیاری از زمانی که شما با استفاده از آن و زمانی که شما برای اولین بار می باشد اختصاص یک اشاره گر و یا زمانی که شما آن را عبور به یک تابع دیگر. OK، همه خوب وجود دارد؟ نوع؟ OK. 

بنابراین به نظر می رسد که ما کرده ایم کردم حدود 12 دقیقه، بنابراین ما در رفتن شاید تنها مشکل ما، و پس از آن وجود دارد هر مفاهیمی است که آمده اند تا در عین حال ما می توانیم سرعت بیش از آن بروید. 

بنابراین تعویض دنده است آخرین مشکل در اینجا، تغییر دهید اظهارات. بنابراین کار شما این است که بازنویسی این به طوری که آن رفتار همان اما سوئیچ استفاده نمی کند. دست گچی. بنابراین هر گونه سوال در مورد این کردن خفاش؟ هیچ؟ OK. آیا همه درک کنند که اگر مورد هیچ چیزی پس از آن را ندارد، به این معنی که آن را باید گام بعدی را دنبال؟ بنابراین مورد 1 و 2 در این مورد همین کار را دقیق. گاهی اوقات یک نقطه از سردرگمی است. 

همه راست. هر کسی هر گونه ایده ها؟ آره؟ 

رسید بنابراین شما می توانید فقط اگر اظهارات انجام دهد. 

ALLISON BUCHHOLTZ-AU: MM-HM. پس چه برای اولین بار یکی از ما است؟ 

رسید اگر N برابر معادل 1، و 2 خط برای یا N برابر برابر با 2، پس از آن چاپ های کوچک است. و پس از آن می توانید انجام دهید اگر دیگری؟ و یا می تواند به شما فقط در صورت؟ 

ALLISON BUCHHOLTZ-AU: شما می توانید در صورت دیگری انجام دهید؟ 

رسید آیا آن مهم نیست اگر شما اگر انجام دهید؟ ALLISON BUCHHOLTZ-AU: پس از آن. آیا anyone-- بنابراین، شما خروجی همان اگر شما استفاده از تنها IFS مقابل اگر شما استفاده از IFS دیگری. آیا می توانید بچه ها از دلیل فکر می کنم به همین دلیل شما ممکن است مایل به استفاده از یک دیگر اگر در مقابل بسیاری از IFS؟ است تا با بهره وری. آره؟ 

رسید این چک تمام IFS هر زمان. 

ALLISON BUCHHOLTZ-AU: بنابراین حتی اگر آن ضربه این یکی از اولین، آن را در بررسی هر یک دیگر بروید. بنابراین شما می خواهید به استفاده از اگر IFS دیگری در مورد که در آن تنها یکی از آنها را همیشه اعمال خواهد شد. بنابراین طرد متقابل است آنچه که ما تمایل به می گویند. اگر شما یک دسته از IFS، به این معنی که شاید بیش از یکی از آنها مسائل، و شاید بیشتر از یکی از آنها می تواند درست باشد. و شما می خواهید هر دو آنها برای اجرای اگر آنها درست هستند. اگر فقط یکی از آنها می خواهم به کار در این موارد متقابلا منحصر به فرد، شما می خواهید به استفاده از دیگری اگر، به دلیل همه را دارد تا با بهره وری. کد خود را فقط به بهتر طراحی شده اگر آن را به این عمل پایبند. بنابراین در این مورد ما دیگر اگر داشته باشد. و این امر می تواند؟ 

رسید: N برابر با 3 برابر. ALLISON BUCHHOLTZ-AU: کامل. متوسط ​​چاپ. و پس از آن در گذشته ما مورد، ما چه چیزی داریم؟ دیگری یا دیگری اگر؟ رسید از. 

ALLISON BUCHHOLTZ-AU: آیا ما want-- شما می خواهید اگر دیگری چون ما موارد بتن. این نوع از گرفتن تمام نیست. اگر شما به طور پیش فرض در حال switch-- به یاد داشته باشید شما می توانید در سوئیچ حالت، و پس از آن به طور پیش فرض. اگر شما به طور پیش فرض به حال، که نوع بیانیه دیگری شما وجود دارد. اما اگر آن را تنها از موارد، این بدان معناست که شما نیاز دارید چک کنید اگر آن را به هر یک از آن. بنابراین در این مورد، آن را 5 4 یا. ما می خواهیم چاپ کردن. این بزرگ است. و وجود دارد که شما بروید. و این امر می تواند برنامه خود را. 

بنابراین در این مورد اگر ما تا به حال یک چیزی به طور پیش فرض، ما را در دیگری داشته باشد هر چه که می خواستند ما را به انجام دهد. به طوری که یک تمایز خوب است می دانید، به درک. آیا این کمک با سوئیچ برای شما؟ کامل است. همه راست. 

در حال حاضر حدود هشت دقیقه. آیا شما هر گونه دیگر مفاهیم سطح بالا؟ سوالات به طور کلی؟ بله؟ 

رسید من تا به حال سوال در مورد یکی از آنها که در مورد تصادفی بود مولد عدد در مسابقه صفر است. ALLISON BUCHHOLTZ-AU: اوه، که یکی. این یکی یک دیگر است که در آن آن ریاضی تر than-- مثبت است. راه حلی برای that-- حتی من زمانی که من آن را ببینید، من مانند آنچه این است هستم. 

رسید این تعداد 7 بود. 

ALLISON BUCHHOLTZ-AU: این عجیب و غریب به نظر من. پس در واقع شما می خواهید برای استفاده از drand48، که به شما برخی را عددی بین 0 و 1. و شما می خواهید به استفاده از آن تا به نحوی که شما دریافت a-- و آن را به مراتب بیشتر از یک مشکل ریاضی به من از من فکر می کنم مشکل CS. 

راه که شما it-- انجام و گاهی اوقات آن را فقط می خواهم که خواهد بود. باز هم، این مواردی که نوع آن مانند آنچه که شما ارسال می توانید و اعتبار جزئی. بنابراین اگر ما می خواهیم یک بازگشت، ما می دانیم که ما هستیم خواهد با استفاده drand48 در برخی از راه، درست است؟ پس چرا ما نه تنها نقطه که پایین. ما در حال استفاده از آن در برخی از راه. راه که آنها شما بچه ها از آن استفاده شده است مثل این که من سعی خواهد کرد و توضیح دهد. 

بنابراین اساسا آنچه در اینجا اتفاق می افتد است چرا که بین 0 و 1 است، آنچه شما انجام است شما ضرب by-- این بسیار یک سوال ریاضی. فقط سلب مسئولیت کامل این است کاملا یک سوال ریاضی. آنچه شما انجام است چون از 0 و 1 و شما می خواهید آن را در است این محدوده، شما در واقع چطور بزرگ محدوده است، و پس از آن شما اساسا آن را در مقیاس بالا، که همان چیزی است که این انجام شده است. 

ب منهای یک به شما می دهد که محدوده، تفاوت بین آن اعداد. شما می توانید بین 0 تکثیر و 1، و سپس اضافه کردن یک تنها بدان معنی است که شما پوسته پوسته شدن آن را به طوری که آن را بین A و B است، که من واقعا دوست دارم این مشکل. همانطور که گفتم، این مسابقه است که به منظور در بر گرفتن افرادی که کمتر و راحت هستند، جایی در میان، و راحت تر. بنابراین اگر آنها از آن ساخته شده به طوری که که آن چیزی بود که هر کس در کمتر محل راحت می کنید، ما را بیش از حد بسیاری از مردم گل کامل، و راحت تر خواهد بود بی حوصله. 

به طوری که آنها همیشه این را دارند نوع سوالات فکری که به معنای کمی سخت تر که برخی از تفکر خلاق را. هنگامی که شما آنها را ببینید، خیلی گیج می کنید. من قطعا می گویند تلنگر از طریق آزمون خود را برای اولین بار. مقابله با مشکلات که شما می دانید شما می توانید، زیرا هیچ استفاده گیر شدن در یک مشکل زمانی که سه وجود دارد یا چهار یا پنج در صفحه پس از آن شما به راحتی می توانید انجام دهید. 

رسید: چرا دقیقا شما انجام دهد آن ضرب محدوده؟ 

ALLISON BUCHHOLTZ-AU: شما چند برابر محدوده که شما know-- آن را مانند که چقدر بعد از این می خواهید؟ بنابراین شما می توانید از فکر می کنم، چرا که آن را تعداد گرداند بین 0 و 1، شما می توانید از آن به عنوان یک درصد فکر می کنم. پس از آن به اساسا و گفت اگر ما خط تعداد ما در اینجا، اینجا، و ب است که در اینجا. شما مثل گذشته چه مقدار از آن است که هستیم؟ آیا همه ما انجام می دهیم. بنابراین شما فقط درخواست درصد این محدوده، که همان چیزی است که آن را به شما دادن. و پس از آن در واقع شما فقط مقیاس آن را با اضافه کردن یک. این یک بازی فکری ریاضی است. 

اگر هر گونه مشاوره در آخرین لحظه وجود دارد، من از طریق پرسش تلنگر می گویند، کشف کردن که آنهایی که شما می دانم که می کنم که من این است. مطمئنا آنها در حال رفتن به شود سوالات است که شما نمی دانید یا که شما قصد وقت برای برای، به طوری که ضربه نقاط قوت خود را، OK؟ شما بچه ها در حال رفتن به بزرگ است. هستند بسیاری از وجود دارد سوالات برای یک دلیل، به طوری که شما هم به نوع فرصت دارند برای نشان دادن آنچه شما واقعا در خوب است. پس از آن OK اگر شما در همه چیز خوب نیست. بازی به نقاط قوت خود را. بله؟ 

رسید بنابراین این از رفتن به چیزی است که کوتاه بازگشت؟ بله، آن را، به دلیل drand بازده بین 0 و 1. این یک int را به بازگشت، به دلیل آن را کوتاه زمانی که ما اضافه کردن یک یا چند برابر آن. سرد. هر گونه سوال در آخرین لحظه؟ 

شما بچه ها می رویم به انجام این کار بزرگ است. شما در حال رفتن به افسانه. و حتی اگر نه، وجود خواهد آب نبات در اینجا لازم است در هفته آینده. و من شما را دوست دارم. من به شما بچه ها بدون در نظر گرفتن دوست دارم. همه حق است، همه، موفق باشید. هم بزرگ است. شما در حال رفتن به خوب است. و شما می دانید چه؟ در دو روز آن را به بیش از باشد، در حالی که من دو لاس در روز پنج شنبه، به طوری که حداقل شما بچه ها انجام خواهد شد. همه حق است، من به شما بچه ها در هفته آینده را ببینید.