1 00:00:00,000 --> 00:00:11,280 2 00:00:11,280 --> 00:00:13,650 >> SPEAKER 1: بسیار خوب. 3 00:00:13,650 --> 00:00:14,390 خوش آمدید. 4 00:00:14,390 --> 00:00:19,260 این دو هفته از CS50 است، و ما باید تا کنون شده است با استفاده از توابع، اما 5 00:00:19,260 --> 00:00:20,830 عمدتا آنها را گرفته شده برای اعطا. 6 00:00:20,830 --> 00:00:23,430 ما چون printf استفاده می شود که دارای اثر جانبی چاپ 7 00:00:23,430 --> 00:00:24,110 همه چیز بر روی صفحه نمایش. 8 00:00:24,110 --> 00:00:25,790 ما استفاده کرده ایم دریافت بین الملل، شناور. 9 00:00:25,790 --> 00:00:29,230 >> اما چه می شود اگر شما واقعا می خواهید برای ایجاد توابع خود را، به عنوان برخی از 10 00:00:29,230 --> 00:00:31,740 شما ممکن است در حال حاضر شروع به به مشکل تنظیم یکی، هر چند انجام 11 00:00:31,740 --> 00:00:33,140 به شدت مورد نیاز نیست؟ 12 00:00:33,140 --> 00:00:37,150 خوب، اجازه دهید به جلو و دوباره که مشکل فقط درخواست کاربر برای 13 00:00:37,150 --> 00:00:40,660 نام و چاپ آنها چیزی در روی صفحه نمایش، اما سعی کنید به عامل از برخی 14 00:00:40,660 --> 00:00:44,000 از اشتراک که ما ام دیده می شود در کد ما تا کنون. 15 00:00:44,000 --> 00:00:45,120 بنابراین که منظور من شرح زیر است. 16 00:00:45,120 --> 00:00:47,315 >> من قصد دارم برای رفتن به جلو و ایجاد یک برنامه جدید، فقط تماس بگیرید 17 00:00:47,315 --> 00:00:49,320 آن را به طور معمول hello.c. 18 00:00:49,320 --> 00:00:53,730 من قصد دارم به جلو بروید و خودم را به من بدهید به شامل io.h استاندارد در بالا باشد. 19 00:00:53,730 --> 00:00:57,040 من قصد دارم خودم را نیز preemptively کتابخانه CS50 به طوری که 20 00:00:57,040 --> 00:00:59,080 من در کامپایلر فریاد زد. 21 00:00:59,080 --> 00:01:02,400 و در حال حاضر من قصد دارم به جلو بروید و اعلام هوشمند، اصلی، از درجه اعتبار ساقط است. 22 00:01:02,400 --> 00:01:09,020 >> و پس از آن در اینجا، این است که من می خواهم برای شروع به برون سپاری قابلیت به 23 00:01:09,020 --> 00:01:12,090 برخی از عملکرد های دیگر که من خودم هستم رفتن به نوشتن اما که نمی کند 24 00:01:12,090 --> 00:01:13,820 در حال حاضر وجود دارد. 25 00:01:13,820 --> 00:01:19,210 به عنوان مثال، فرض کنید که من می خواستم ارسال یک تابع است که به من اجازه می دهد به 26 00:01:19,210 --> 00:01:23,830 نسخه قابل چاپ کردن سلام، کاما، و سپس نام برخی از کاربر است. 27 00:01:23,830 --> 00:01:29,010 به جای ادامه به انجام این چون printf سلام،٪، نمی خواهد آن را خوب اگر باشد 28 00:01:29,010 --> 00:01:33,380 فقط یک تابع نامیده می شود وجود دارد چون printf نیست اما نام چاپ؟ 29 00:01:33,380 --> 00:01:36,600 >> بنابراین به عبارت دیگر، من می خواهم که قادر به نوشتن یک برنامه است که نشانی از یک کمی 30 00:01:36,600 --> 00:01:37,710 چیزی شبیه به این. 31 00:01:37,710 --> 00:01:42,070 اول، من قصد دارم به می گویند چون printf نام، در نتیجه باعث کاربر 32 00:01:42,070 --> 00:01:46,150 من او یا نام او به من بدهید، و پس از آن من رفتن به استفاده از رشته s آشنا به 33 00:01:46,150 --> 00:01:47,290 اعلام رشته. 34 00:01:47,290 --> 00:01:50,420 من یک متغیر از نوع رشته، آن، و ذخیره در آن 35 00:01:50,420 --> 00:01:52,120 نتیجه فراخوانی رشته. 36 00:01:52,120 --> 00:01:56,060 اما در حال حاضر در هفته های گذشته، من می خواهم که تا حدودی tediously انجام می شود سلام،٪ S / N. 37 00:01:56,060 --> 00:01:58,630 38 00:01:58,630 --> 00:02:02,570 >> و به عبارت دیگر، ما دیده ایم این به عنوان مثال یک دسته از بار، و آن را یک 39 00:02:02,570 --> 00:02:05,280 مثال کوچکی چون فقط یک وجود دارد خط کد پس از آن واقعا نمی 40 00:02:05,280 --> 00:02:06,860 معامله بزرگ برای حفظ دوباره تایپ کردن در. 41 00:02:06,860 --> 00:02:09,990 اما فرض کنید که این خط از کد در واقع تبدیل شدن به یک بار، و 42 00:02:09,990 --> 00:02:12,900 یک خط از کد نیست، بلکه آن 10 خط از کد را چند هفته از هم اکنون، 43 00:02:12,900 --> 00:02:15,190 و شما فقط خسته شدن کپی کردن و چسباندن یا 44 00:02:15,190 --> 00:02:17,180 تایپ مجدد که همان کد. 45 00:02:17,180 --> 00:02:22,100 آیا آن را خوب به جای انجام می باشد چون printf سلام،٪ s و غیره، 46 00:02:22,100 --> 00:02:26,500 آن را نمی شود خوب اگر فقط وجود دارد یک تابع به نام نام چاپ عکس که 47 00:02:26,500 --> 00:02:27,560 استدلال طول می کشد - 48 00:02:27,560 --> 00:02:29,120 به عبارت دیگر، طول می کشد ورودی - 49 00:02:29,120 --> 00:02:30,620 و پس از آن نقطه و ویرگول بدین. 50 00:02:30,620 --> 00:02:33,240 به طوری که تابع، آن را نمی می تواند به خوبی در صورتی که وجود داشته است؟ 51 00:02:33,240 --> 00:02:36,690 سپس من نمی خواهد که به نگرانی در مورد چون printf است، چه٪ s و تمام 52 00:02:36,690 --> 00:02:39,400 این پیچیدگی که عبارتند از نه همه که جالب است. 53 00:02:39,400 --> 00:02:40,570 آنها مفید هستند. 54 00:02:40,570 --> 00:02:44,700 >> بنابراین نام چاپ، متاسفانه، نبود 40 سال، به همراه پیش اختراع. 55 00:02:44,700 --> 00:02:45,980 هیچ کس فکر آن را بنویسید. 56 00:02:45,980 --> 00:02:48,300 اما این زیبایی داشتن یک زبان های برنامه نویسی، درست مانند 57 00:02:48,300 --> 00:02:52,930 ابتدا شما می توانید بلوک های سفارشی را تعریف کنیم، بنابراین در C و هر زبان، می تواند به شما 58 00:02:52,930 --> 00:02:57,260 تعریف عملکرد خود را، می تواند توابع خود را تعریف می کنید. 59 00:02:57,260 --> 00:03:01,710 بنابراین حتی اگر ما اصلی توسط به طور خودکار به صورت رایگان، ما می توانیم اعلام 60 00:03:01,710 --> 00:03:02,730 توابع خود ما. 61 00:03:02,730 --> 00:03:05,670 >> بنابراین من قصد دارم به برخی از اتاق تا بالا، و من قصد دارم به اعلام 62 00:03:05,670 --> 00:03:08,210 تابع خود که رفتن به نگاه در ابتدا کمی عجیب و غریب است اما ما می آیند 63 00:03:08,210 --> 00:03:09,400 برگشت به قبل زمانی. 64 00:03:09,400 --> 00:03:12,310 من قصد دارم به درجه اعتبار ساقط می گویند، در نتیجه نشان می دهد این تابع می کند 65 00:03:12,310 --> 00:03:16,040 چیزی، یک عارضه جانبی است، اما آن را چیزی برای من در بر نمی گرداند 66 00:03:16,040 --> 00:03:18,810 راه همان است که بین المللی و یا دریافت رشته خود را انجام می دهد. 67 00:03:18,810 --> 00:03:22,450 و من قصد دارم به این تابع نام نام چاپ، و من قصد دارم به 68 00:03:22,450 --> 00:03:26,470 مشخص است که این مرد می گذرد را به یک رشته، و من قصد دارم به تماس که 69 00:03:26,470 --> 00:03:27,600 نام رشته. 70 00:03:27,600 --> 00:03:32,100 من می توانم آن را هر چیزی که من می خواهم صدا می زنه، اما من می خواهید کد من به خود مستند. 71 00:03:32,100 --> 00:03:34,770 به عبارت دیگر، اگر یکی از شما به باز کردن این فایل و آن را بخوانید، شما می توانید 72 00:03:34,770 --> 00:03:39,020 مرتب کردن بر اساس استنتاج از نام آن ورودی چه نقشی را که قرار است بازی. 73 00:03:39,020 --> 00:03:42,270 >> و در حال حاضر زیر را که، من قصد دارم برای باز کردن بریس مجعد و بریس بسته فرفری، 74 00:03:42,270 --> 00:03:47,140 و به همین ترتیب متوجه من همان را دنبال کردهاید و الگوی بر روی خطوط چهار تا هفت به عنوان 75 00:03:47,140 --> 00:03:51,622 من به مدت یک هفته خوب به علاوه پس از در حال حاضر بین، می گویند، نه خطوط و 76 00:03:51,622 --> 00:03:53,400 14 که آهنگسازی عمده. 77 00:03:53,400 --> 00:03:56,160 به عبارت دیگر، نام نسخه قابل چاپ تابع دیگری است. 78 00:03:56,160 --> 00:03:58,990 در حال حاضر، کامپایلر است که نمی دانم به تماس این چیز به صورت خودکار 79 00:03:58,990 --> 00:04:02,670 چون من به معنای واقعی کلمه فقط آن را اختراع کرد، اما هنوز هم می دانم که به فراخوان اصلی 80 00:04:02,670 --> 00:04:08,710 به طور خودکار، و پس از آن البته در خط 13، من خواستار عملکرد خود من. 81 00:04:08,710 --> 00:04:12,805 و چون من اعلام کردم که تابع در خط چهار اصلی، 82 00:04:12,805 --> 00:04:16,579 این است که برای تدریس کامپایلر نقل قول، نقل قول را تمام کردن، "نام چاپ عکس" 83 00:04:16,579 --> 00:04:18,140 بدان معنی است و آنچه در آن باید انجام دهید. 84 00:04:18,140 --> 00:04:22,700 بنابراین من مرتب سازی بر دادن آن را سفارشی جدید هستم مسدود در زمینه، می گویند، با ناخن خراش. 85 00:04:22,700 --> 00:04:27,240 >> بنابراین در اینجا، من می توانم که بسیار معمول است یا الگوی تکرار از کد من نگه دارید 86 00:04:27,240 --> 00:04:32,300 نوشتن در کلاس، چون printf ٪ خوش آمدید،٪ S / N "، - 87 00:04:32,300 --> 00:04:36,720 88 00:04:36,720 --> 00:04:37,590 چه من می خواهم برای قرار دادن در اینجا؟ 89 00:04:37,590 --> 00:04:39,200 S؟ 90 00:04:39,200 --> 00:04:41,420 بنابراین من می خواهم به نام در این زمینه قرار داده است. 91 00:04:41,420 --> 00:04:43,440 بنابراین یک بیت از یک دوگانگی را متوجه در اینجا. 92 00:04:43,440 --> 00:04:47,680 از آنجا که من اعلام عملکرد خود من و من تا حدودی خودسرانه نامیده می شود 93 00:04:47,680 --> 00:04:50,880 آن را چاپ نام، و چون من در پرانتز مشخص شده که این 94 00:04:50,880 --> 00:04:55,035 تابع یک آرگومان، نوع طول می کشد است که یک رشته - پس از آن یک کلمه 95 00:04:55,035 --> 00:05:00,010 یا عبارت و یا چیزی شبیه به آن - و من تلفنی که نام استدلال، که 96 00:05:00,010 --> 00:05:04,770 به معنی تنها متغیر است که در دامنه، پس به صحبت می کنند، نام. 97 00:05:04,770 --> 00:05:07,780 >> S تنها بین آنچه دو وجود دارد آکولاد، البته؟ 98 00:05:07,780 --> 00:05:12,990 خوب در واقع، درست مثل خط 10 را از طریق 14، پس فقط می خواهم در روز دوشنبه نمی تواند استفاده 99 00:05:12,990 --> 00:05:17,650 S، اما آنچه که من می تواند انجام دهد این است عبور S به نام چاپ. 100 00:05:17,650 --> 00:05:21,030 نسخه قابل چاپ نام خیلی اتفاق می افتد تا آن را نام مستعار، مترادف، نام مستعار، 101 00:05:21,030 --> 00:05:24,400 خواستار آن نام، و در حال حاضر با استفاده از آن را در این خط. 102 00:05:24,400 --> 00:05:26,840 بنابراین در حال حاضر اجازه دهید من این صرفه جویی، زوم کردن. 103 00:05:26,840 --> 00:05:31,250 >> اجازه دهید من به جلو و سلام. 104 00:05:31,250 --> 00:05:32,400 به نظر می رسد خوب است. 105 00:05:32,400 --> 00:05:36,110 آیا تف از هر گونه خطا. / سلام وارد کنید. 106 00:05:36,110 --> 00:05:37,020 نام من چیست؟ 107 00:05:37,020 --> 00:05:38,060 دیوید. 108 00:05:38,060 --> 00:05:39,270 سلام دیوید. 109 00:05:39,270 --> 00:05:41,820 پس همه که هیجان انگیز نیست، اما فقط در حال حاضر فکر می کنم. 110 00:05:41,820 --> 00:05:44,310 شما در حال حاضر به همان عنصر را داشته همانطور که ما در ابتدا به انجام 111 00:05:44,310 --> 00:05:45,420 توابع خود ما. 112 00:05:45,420 --> 00:05:46,770 >> اما یک بیت از یک مارپیچ وجود دارد. 113 00:05:46,770 --> 00:05:50,620 فرض کنید که من تا به حال واقعا فکر نمی این کار را از طریق و من در واقع بدون 114 00:05:50,620 --> 00:05:54,250 واقعا فکر کردن در مورد آن نوشت که تابع به اینجا. 115 00:05:54,250 --> 00:05:55,420 احساس می کند کاملا منطقی است. 116 00:05:55,420 --> 00:05:58,440 در ابتدا هیچ اندیشه ای وجود ندارد محل در اسکریپت خود را. 117 00:05:58,440 --> 00:06:00,670 شما می توانید به یکی از اینجا تا در اینجا قرار دهید،، تا یکی اینجا، و آن را ممکن است شروع به 118 00:06:00,670 --> 00:06:03,310 به نگاه کمی کثیف اگر اینکار را نکنید ذخیره کردن آن را منظمی، اما آن را نمی کند 119 00:06:03,310 --> 00:06:05,910 توجه به جایی که از اسکریپت بر روی صفحه نمایش. 120 00:06:05,910 --> 00:06:09,660 متاسفانه در C - و این است که بر خلاف زبان هایی مانند جاوا و پایتون 121 00:06:09,660 --> 00:06:13,600 و دیگران که شما ممکن است آشنا - متاسفانه در C، سفارش می کند 122 00:06:13,600 --> 00:06:15,830 مهم به دلیل دیده بان رفتن به اتفاق می افتد در حال حاضر. 123 00:06:15,830 --> 00:06:19,010 >> تابع پیش فرض که رفتن به اجرا است، البته، اصلی. 124 00:06:19,010 --> 00:06:22,290 صفحه اصلی در حال رفتن به تماس نام چاپ در خط هشت، اما متاسفانه، 125 00:06:22,290 --> 00:06:26,660 کامپایلر حتی نمی دانند که نام چاپ وجود دارد تا زمانی که آن را به خط 11 می شود، 126 00:06:26,660 --> 00:06:28,520 که متاسفانه رفتن به خیلی دیر شده. 127 00:06:28,520 --> 00:06:30,660 بنابراین انجام دهید را خوش آمدید. 128 00:06:30,660 --> 00:06:32,950 و در حال حاضر لعنتی، دو اشتباه تولید می شود. 129 00:06:32,950 --> 00:06:36,050 بنابراین در حال حاضر اجازه دهید من رفته تا بسیار اول، به عنوان ما همیشه باید انجام دهید، و 130 00:06:36,050 --> 00:06:39,560 متوجه است که آن را در من فریاد، "اعلام ضمنی تابع 131 00:06:39,560 --> 00:06:40,540 نام چاپ. " 132 00:06:40,540 --> 00:06:43,860 >> بنابراین ما دیده ایم این پیام قبل از، اعلام ضمنی تابع. 133 00:06:43,860 --> 00:06:48,080 هنگامی که ما دیده می شود که نوع خطا؟ 134 00:06:48,080 --> 00:06:49,180 وقتی که من یک کتابخانه را شامل نمی شود. 135 00:06:49,180 --> 00:06:53,470 اگر من cs50.h و را فراموش کرده و من می توانید فریاد زد در رشته و یا اعضای هیات. 136 00:06:53,470 --> 00:06:56,880 اما در این مورد، این تابع چاپ نام در کتابخانه نیست، درست است؟ 137 00:06:56,880 --> 00:07:00,230 این به معنای واقعی کلمه در این فایل، به طوری که آنچه واقعا مشکل است؟ 138 00:07:00,230 --> 00:07:04,660 >> خوب متاسفانه در C، آن را به شما طول می کشد فوق العاده به معنای واقعی کلمه است که اگر شما 139 00:07:04,660 --> 00:07:08,640 می خواهید یک تابع نامیده می شود نام چاپ به وجود داشته باشد، شما هم باید برای پیاده سازی 140 00:07:08,640 --> 00:07:11,940 که تابع در بالا بسیار از شما کد به طوری که آن را در دسترس است به کاهش 141 00:07:11,940 --> 00:07:15,070 توابع، اما رک و پوست کنده، که می شود درهم و برهم بسیار به سرعت. 142 00:07:15,070 --> 00:07:18,160 شخصا، من مانند قرار دادن اولین اصلی چرا که پس از آن بسیار روشن است آنچه که این 143 00:07:18,160 --> 00:07:19,890 برنامه در نگاه اول است. 144 00:07:19,890 --> 00:07:23,290 و به علاوه، شما می توانید به گوشه های عجیب و غریب مواردی که اگر x می خواهد به تماس 145 00:07:23,290 --> 00:07:27,530 اما سالانه ممکن است X شما فقط تماس بگیرید، از لحاظ جسمی نمی تواند در واقع یکی قرار داده است 146 00:07:27,530 --> 00:07:28,540 بالاتر از دیگر. 147 00:07:28,540 --> 00:07:31,230 >> اما معلوم است در C، ما می توانیم حل این خیلی ساده است. 148 00:07:31,230 --> 00:07:34,010 من قصد دارم برای قرار دادن کمی از فضا تا اینجا، و من فقط رفتن به 149 00:07:34,010 --> 00:07:38,170 preemptively، البته تا حدودی redundantly، رفتن به آموزش 150 00:07:38,170 --> 00:07:42,320 کامپایلر وجود دارد که یک تابع وجود دارد نام نام چاپ، طول می کشد یک رشته، 151 00:07:42,320 --> 00:07:46,330 و من قصد دارم به تماس نام آن نقطه و ویرگول بدین. 152 00:07:46,330 --> 00:07:50,220 >> بنابراین این در حال حاضر در خط چهار، که ما را دیده اند، نه قبل از آن، اعلام 153 00:07:50,220 --> 00:07:53,940 نام تابع چاپ عکس، اما آن را تنها قول می دهم که این تابع 154 00:07:53,940 --> 00:07:56,620 در نهایت تعریف می شود، در نهایت اجرا می شود. 155 00:07:56,620 --> 00:08:00,180 این در حال حاضر من می توانم به تنهایی ترک چون در حال حاضر این تعریف است، 156 00:08:00,180 --> 00:08:04,090 پیاده سازی، مرتب کردن بر اساس آخرین مایل اجرای این 157 00:08:04,090 --> 00:08:05,130 تابع خاص است. 158 00:08:05,130 --> 00:08:08,450 بنابراین رک و پوست کنده آن را احمقانه، آن را آزار دهنده، اما این راه C است، و آن را 159 00:08:08,450 --> 00:08:12,050 چرا که آن را به شما طول می کشد بسیار به معنای واقعی کلمه و به عنوان یک کامپیوتر باید رک و پوست کنده، 160 00:08:12,050 --> 00:08:16,020 تنها دقیقا همان چیزی است که شما آن را برای گفتن انجام دهید، و به طوری که ترتیب مهم است. 161 00:08:16,020 --> 00:08:18,940 >> پس نگه داشتن آن در ذهن و دوباره، شروع به متوجه عود الگوها. 162 00:08:18,940 --> 00:08:21,850 شانس شما خواهد شد، اگر شما را نداشته باشند در حال حاضر، شروع به برخورد پیام 163 00:08:21,850 --> 00:08:24,700 مثل این که در نگاه اول به نظر می رسد کاملا مرموز، اما اگر شما شروع به 164 00:08:24,700 --> 00:08:29,000 برای این کلمات کلیدی شبیه "اعلام ضمنی،" ذکر 165 00:08:29,000 --> 00:08:32,380 تابع در این مورد - و رک و پوست کنده، شما گاهی اوقات حتی کمی سبز 166 00:08:32,380 --> 00:08:35,010 نماد هویج است که به شما می گوید که در آن این مسئله احتمالا - 167 00:08:35,010 --> 00:08:40,980 شما می توانید شروع به کار و راه خود را از طریق هنوز پیغام خطا نهان. 168 00:08:40,980 --> 00:08:45,860 هر گونه سوال در مورد نوشتن خود را عملکرد خود را در این راه؟ 169 00:08:45,860 --> 00:08:47,540 >> اجازه دهید چیزی که یک کمی بیشتر فوتی و فوری. 170 00:08:47,540 --> 00:08:51,760 به جای فقط انجام چیزی است که یک عارضه جانبی از چاپ، بگذار بروم 171 00:08:51,760 --> 00:08:55,340 جلو و صرفه جویی در یک فایل جدید، و ما تماس این positive.c، حتی اگر آن را 172 00:08:55,340 --> 00:08:57,600 رفتن به کمی متفاوت در مقابل زمان آخرین. 173 00:08:57,600 --> 00:09:01,910 و این بار، من می خواهم به پیاده سازی مجدد زمان گذشته، به عنوان مثال positive.C، که 174 00:09:01,910 --> 00:09:04,430 مجبور به کاربر به منظور من یک عدد صحیح مثبت است. 175 00:09:04,430 --> 00:09:07,280 اما من مجبور به استفاده از نوع int آخرین بار. 176 00:09:07,280 --> 00:09:10,780 آیا آن را خوب است اگر وجود داشت یک تابع به نام بین المللی مثبت 177 00:09:10,780 --> 00:09:13,610 که من فقط می تواند این برون سپاری قطعه ای از قابلیت؟ 178 00:09:13,610 --> 00:09:16,480 بنابراین تفاوت در اینجا این است که ما را اجرای بین المللی مثبت، اما بر خلاف 179 00:09:16,480 --> 00:09:20,330 نام چاپ عکس است که تا به حال عارضه جانبی - آن چیزی به من بر نمی گرداند مثل 180 00:09:20,330 --> 00:09:21,710 یک عدد یا یک رشته - 181 00:09:21,710 --> 00:09:25,510 بین المللی مثبت است، البته، رفتن به بازگشت، امیدوارم، نوع int مثبت است. 182 00:09:25,510 --> 00:09:26,170 >> بنابراین اجازه دهید این کار را. 183 00:09:26,170 --> 00:09:30,840 شامل cs50.h، عبارتند از io.h. استاندارد 184 00:09:30,840 --> 00:09:33,520 INT از درجه اعتبار ساقط اصلی. 185 00:09:33,520 --> 00:09:42,160 و در حال حاضر در اینجا، من قصد دارم به جلو بروید و اجازه دهید بگویم هوشمند، آن تماس بگیرید N، برابر 186 00:09:42,160 --> 00:09:44,270 گرفتن بین المللی مثبت. 187 00:09:44,270 --> 00:09:49,080 و درست مثل بین المللی در حال حاضر وجود دارد زیرا کارکنان آن را نوشت، من قصد دارم 188 00:09:49,080 --> 00:09:53,950 به فرض برای لحظه ای که دریافت بین المللی مثبت وجود دارد، و در حال حاضر من قصد دارم 189 00:09:53,950 --> 00:09:57,730 به جلو بروید و می گویند چون printf، با تشکر برای٪ I / N، N. 190 00:09:57,730 --> 00:10:02,940 191 00:10:02,940 --> 00:10:07,770 >> بنابراین در حال حاضر اگر این برنامه را کامپایل کنم، چه اتفاق خواهد افتاد در ترمینال من 192 00:10:07,770 --> 00:10:09,075 پنجره در پایین صفحه نمایش؟ 193 00:10:09,075 --> 00:10:11,580 194 00:10:11,580 --> 00:10:13,900 من قصد دارم به احتمالا دریافت کنید که همان خطا مانند قبل. 195 00:10:13,900 --> 00:10:14,570 بنابراین سعی کنید این اجازه. 196 00:10:14,570 --> 00:10:16,450 مطمئن مثبت. 197 00:10:16,450 --> 00:10:19,900 و دوباره، اعلام ضمنی از تابع، مثبت بین المللی. 198 00:10:19,900 --> 00:10:21,970 بنابراین ما می توانیم این کار را در حل یک زن و شوهر از راه. 199 00:10:21,970 --> 00:10:27,310 من قصد دارم به نگه داشتن آن ساده و فقط قرار دادن این اظهارنامه من در اینجا و 200 00:10:27,310 --> 00:10:28,120 بین المللی مثبت. 201 00:10:28,120 --> 00:10:29,720 من باید امضا اصطلاح. 202 00:10:29,720 --> 00:10:32,410 امضا فقط اشاره به زیبایی شناسی از 203 00:10:32,410 --> 00:10:34,090 خط اول از برنامه است. 204 00:10:34,090 --> 00:10:37,420 پس چه باید مثبت INT بازگشت؟ 205 00:10:37,420 --> 00:10:37,970 >> بنابراین یک int است. 206 00:10:37,970 --> 00:10:41,540 منظورم این است که ایده آل، این امر می گشت چیزی مانند نوع int مثبت، اما 207 00:10:41,540 --> 00:10:42,160 وجود ندارد. 208 00:10:42,160 --> 00:10:45,280 ما دیده ام که در میان داده های ما انواع، بنابراین ما باید برای مقابله با 209 00:10:45,280 --> 00:10:47,170 واقعیت این است که ما باید بسیار کمی انواع داده ها برای کار با. 210 00:10:47,170 --> 00:10:50,360 اما ما می توانیم یک int و فقط بازگشت اعتماد که از آن مثبت خواهد بود. 211 00:10:50,360 --> 00:10:52,690 این به آن می شود گرفتن بین المللی مثبت. 212 00:10:52,690 --> 00:10:55,122 >> و در حال حاضر در مورد استدلال های خود را؟ 213 00:10:55,122 --> 00:10:56,440 آیا آن را به هر ورودی؟ 214 00:10:56,440 --> 00:10:58,280 آیا هر ورودی به آن نیاز دارند؟ 215 00:10:58,280 --> 00:11:00,900 پس از آن نیازی به دانستن در پیشبرد هر چیزی. 216 00:11:00,900 --> 00:11:03,220 دریافت رشته نمی کند، بین المللی ندارد. 217 00:11:03,220 --> 00:11:06,430 چون printf می کند - به آن نیاز دارد به برخی از ورودی سرانجام به آن - و نام چاپ 218 00:11:06,430 --> 00:11:09,020 مورد نیاز برخی از ورودی، اما بین المللی مثبت نمی کند. 219 00:11:09,020 --> 00:11:11,530 بنابراین من قصد دارم به صراحت از درجه اعتبار ساقط کامپایلر بگویید. 220 00:11:11,530 --> 00:11:13,470 از درجه اعتبار ساقط فقدان از هر چیز دیگری است. 221 00:11:13,470 --> 00:11:17,990 بنابراین از درجه اعتبار ساقط وسیله چیزی است که در داخل از این پرانتز، نقطه و ویرگول بدین شکل. 222 00:11:17,990 --> 00:11:20,840 >> و در حال حاضر در پایین فایل من - و نوع دیگر، من فقط از مقعد 223 00:11:20,840 --> 00:11:23,640 اینجا قرار دادن اصلی در بالا، که تمرین خوبی است، زیرا این راه، 224 00:11:23,640 --> 00:11:26,220 در هر زمان شما و یا شخص دیگری فایل خود را، باز می شود 225 00:11:26,220 --> 00:11:27,400 قابلیت سمت راست وجود دارد. 226 00:11:27,400 --> 00:11:29,660 شما می توانید از یک مربع شیرجه رفتن. 227 00:11:29,660 --> 00:11:34,190 بنابراین در حال حاضر من قصد دارم به این تکراری، دریافت از درجه اعتبار ساقط اعضای هیات مثبت است، اما من نیستم 228 00:11:34,190 --> 00:11:35,430 رفتن به ضربه نقطه و ویرگول در حال حاضر. 229 00:11:35,430 --> 00:11:38,280 من قصد دارم برای باز کردن آکولاد، و در حال حاضر من نیاز به قرض گرفتن 230 00:11:38,280 --> 00:11:39,700 برخی از ایده های از دوشنبه. 231 00:11:39,700 --> 00:11:44,450 >> همانگونه که شما به خاطر، ما کاری انجام دادند می خواهم زیر را انجام دهید در حالی که 232 00:11:44,450 --> 00:11:45,830 چیزی واقعی بود. 233 00:11:45,830 --> 00:11:46,630 و آنچه که من انجام دهید؟ 234 00:11:46,630 --> 00:11:51,540 من چیزی شبیه به من بدهید من یک عدد صحیح مثبت، 235 00:11:51,540 --> 00:11:52,430 کمی سریع است. 236 00:11:52,430 --> 00:11:53,540 من می توانم هر یک از عبارات من می خواهید استفاده کنید. 237 00:11:53,540 --> 00:11:54,960 و سپس من استفاده می شود چه؟ 238 00:11:54,960 --> 00:11:59,530 INT N برابر دریافت اعضای هیات، بدون آرگومان به آن. 239 00:11:59,530 --> 00:12:00,550 >> و متوجه تفاوت. 240 00:12:00,550 --> 00:12:04,680 هنگامی که شما به یک تابع، زمانی که شما با استفاده از یک تابع، شما در درجه اعتبار ساقط قرار داده نشده است. 241 00:12:04,680 --> 00:12:08,570 شما فقط کار را که در هنگام اعلام تابع، آموزش کامپایلر چه 242 00:12:08,570 --> 00:12:09,780 آن را باید انتظار داشت. 243 00:12:09,780 --> 00:12:11,650 بنابراین شما لازم نیست برای قرار دادن خود را از درجه اعتبار ساقط وجود دارد. 244 00:12:11,650 --> 00:12:12,940 >> و در حال حاضر چه شرایط من بود؟ 245 00:12:12,940 --> 00:12:19,670 خوب، N برابر است با به مثبت نیست، اما این فقط شبه کد است. 246 00:12:19,670 --> 00:12:22,530 پس چگونه می توانم این بیان ولایه؟ 247 00:12:22,530 --> 00:12:24,090 بنابراین کمتر از یا مساوی صفر است. 248 00:12:24,090 --> 00:12:26,250 بنابراین دوباره، توجه شما می توانید انجام دهید کمتر از یا مساوی. 249 00:12:26,250 --> 00:12:28,100 حتی اگر آن دو جداگانه نمادها، شما می توانید آن را انجام 250 00:12:28,100 --> 00:12:29,350 صفحه کلید خود را به عنوان چون. 251 00:12:29,350 --> 00:12:33,950 >> اما هنوز یک اشکال است که وجود دارد من screwed تا در زمان گذشته بیش از حد. 252 00:12:33,950 --> 00:12:36,950 من مجبور به اعلام - 253 00:12:36,950 --> 00:12:37,460 دقیقا. 254 00:12:37,460 --> 00:12:39,640 من باید به اعلام نفر در خارج حلقه. 255 00:12:39,640 --> 00:12:44,180 بنابراین من نیاز به قرار دادن نفر تا اینجا، و من نمی می خواهم دوباره اعلام آن را در اینجا 256 00:12:44,180 --> 00:12:46,480 مبادا من یک متغیر جدید را دریافت کنید. 257 00:12:46,480 --> 00:12:48,860 من فقط می خواهم یک مقدار در اینجا. 258 00:12:48,860 --> 00:12:54,320 >> و در حال حاضر من کاملا در اینجا انجام می شود نیست. 259 00:12:54,320 --> 00:12:57,290 اجازه دهید من جلوتر از خودم و وانمود کنید که من انجام داده ام. 260 00:12:57,290 --> 00:13:01,220 مثبت، و در حال حاضر یک خطای جدید وجود دارد. 261 00:13:01,220 --> 00:13:04,550 کنترل پایان می رسد تابع غیر از درجه اعتبار ساقط است. 262 00:13:04,550 --> 00:13:07,760 بنابراین پیغام خطای جدید، اما اگر شما نوع کسی را دست انداختن از هم جدا هر کدام از واژه ها، 263 00:13:07,760 --> 00:13:09,620 احتمالا در چه چیزی اشتباه است اشاره. 264 00:13:09,620 --> 00:13:11,240 >> کنترل کنید. 265 00:13:11,240 --> 00:13:14,250 کنترل حالت فقط بدان معناست به منظور عملیات در یک برنامه. 266 00:13:14,250 --> 00:13:16,510 کامپیوتر در کنترل و چیزی را اشتباه رفت. 267 00:13:16,510 --> 00:13:18,510 پس از آن به پایان می رسد یک تابع غیر از درجه اعتبار ساقط است. 268 00:13:18,510 --> 00:13:21,760 چه تابع ظاهرا با اشاره به؟ 269 00:13:21,760 --> 00:13:24,790 چه تابع غیر از درجه اعتبار ساقط است؟ 270 00:13:24,790 --> 00:13:27,400 بنابراین بین المللی مثبت، و کمی گیج کننده است که به خوبی، 271 00:13:27,400 --> 00:13:29,010 این نوع از درجه اعتبار ساقط است. 272 00:13:29,010 --> 00:13:33,070 این مشخصات خالی برای آن استدلال، اما خروجی آن به 273 00:13:33,070 --> 00:13:34,540 از نوع N باشد. 274 00:13:34,540 --> 00:13:37,260 بنابراین کلمه در سمت چپ است به اصطلاح نوع بازگشت. 275 00:13:37,260 --> 00:13:40,320 کلمه در داخل در اینجا استدلال صفر یا بیشتر 276 00:13:40,320 --> 00:13:41,970 که یک تابع طول می کشد. 277 00:13:41,970 --> 00:13:44,060 >> بنابراین چه چیزی باید انجام دهم؟ 278 00:13:44,060 --> 00:13:47,650 در این نقطه در کد من، خط 21 که در آن سریع چشمک زن در حال حاضر است، من 279 00:13:47,650 --> 00:13:51,430 بین المللی مثبت در درون متغیر به نام N. 280 00:13:51,430 --> 00:13:55,200 چگونه می توانم آن را برگشت به بخش اصلی؟ 281 00:13:55,200 --> 00:13:55,960 به معنای واقعی کلمه. 282 00:13:55,960 --> 00:13:59,320 بازگشت N نقطه و ویرگول بدین. 283 00:13:59,320 --> 00:14:04,090 >> پس فقط به عنوان کولتن بازگشت یک تکه مقاله با پاسخ به من انداختن 284 00:14:04,090 --> 00:14:07,020 که قطعه ای از کاغذ در کمی سیاه و سفید جعبه روی میز، به انجام این کار در 285 00:14:07,020 --> 00:14:10,100 کد، شما به معنای واقعی کلمه فقط نوشتن، بازگشت نفر، و آن را به عنوان اینکه کولتن 286 00:14:10,100 --> 00:14:12,140 توزیع چیزی پشت فیزیکی. 287 00:14:12,140 --> 00:14:15,870 در این مورد، آنچه اتفاق می افتد این است که بین المللی مثبت در حال رفتن به پشت دست 288 00:14:15,870 --> 00:14:19,220 آنچه احتمالا مثبت عدد صحیح به چه کسی؟ 289 00:14:19,220 --> 00:14:21,380 از کجا که به ارزش تا پایان؟ 290 00:14:21,380 --> 00:14:29,080 که به پایان می رسد تا در این متغیر، N و پس از آن ما با خط نه ادامه دهید. 291 00:14:29,080 --> 00:14:31,920 >> بنابراین به عبارت دیگر، به منظور از عملیات، این برنامه شروع می شود 292 00:14:31,920 --> 00:14:34,430 اجرا و کامپایلر متوجه می شود، آه، شما می خواهید کتابخانه؟ 293 00:14:34,430 --> 00:14:36,310 اجازه بدهید من به چنگ زدن به هر آنچه در داخل است که. 294 00:14:36,310 --> 00:14:37,750 اوه، شما می خواهید کتابخانه استاندارد IO؟ 295 00:14:37,750 --> 00:14:39,660 اجازه بدهید من به چنگ زدن به هر آنچه در داخل است که. 296 00:14:39,660 --> 00:14:44,510 کامپایلر چه می گوید به خود در هنگام برخورد خط چهار؟ 297 00:14:44,510 --> 00:14:47,980 آه، شما وعده داده شده برای پیاده سازی تابع نامیده می شود مثبت است، اما 298 00:14:47,980 --> 00:14:50,820 خواهیم کرد که بعد به عقب بر گردیم، چیزی در امتداد آن خطوط. 299 00:14:50,820 --> 00:14:53,450 >> درجه اعتبار ساقط اصلی بین المللی فقط بدان معناست در اینجا جرات از برنامه های من است. 300 00:14:53,450 --> 00:14:54,990 در خط هفت فقط یک آکولاد است به. 301 00:14:54,990 --> 00:14:59,540 خط هشتم گفت: در سمت چپ، به من 32 بیت برای یک عدد صحیح، آن را نفر. 302 00:14:59,540 --> 00:15:02,160 در سمت راست، آن را گفت: بین المللی مثبت. 303 00:15:02,160 --> 00:15:07,120 مکث بیایید که داستان به دلیل در حال حاضر من نگه داشتن نیست با حرکت مکان نما پایین است. 304 00:15:07,120 --> 00:15:11,720 مکان نما من در حال حاضر در اینجا می رود چون در حال حاضر به اعضای هیات مثبت اجرا. 305 00:15:11,720 --> 00:15:13,100 INT نفر اعلام شده است. 306 00:15:13,100 --> 00:15:14,040 زیر را انجام دهید. 307 00:15:14,040 --> 00:15:16,090 چون printf به من می دهد یک عدد صحیح مثبت است. 308 00:15:16,090 --> 00:15:19,740 >> دریافت int از کاربر، ذخیره آن را در n، و شاید این کار را دوباره و دوباره. 309 00:15:19,740 --> 00:15:23,010 این حلقه به این معنی است که این کد ممکن است اجرای بالا و پایین مثل این دوباره 310 00:15:23,010 --> 00:15:25,810 و دوباره، اما زمانی که کاربر در نهایت همکاری و به من مثبت 311 00:15:25,810 --> 00:15:31,750 INT، من ضربه خط 21، که در آن نقطه عدد به دست پشت و که یکی از 312 00:15:31,750 --> 00:15:34,280 در حال حاضر باید مشخص کنم؟ 313 00:15:34,280 --> 00:15:35,070 نه. 314 00:15:35,070 --> 00:15:39,010 کنترل، پس به صحبت می کنند، برمی گرداند به خط نه. 315 00:15:39,010 --> 00:15:40,650 این خط که در حال حاضر مسئول است. 316 00:15:40,650 --> 00:15:43,250 >> به طوری که آنچه اتفاق می افتد، تمام شده است این زمان در زیر کاپوت، اما 317 00:15:43,250 --> 00:15:46,480 هنگامی که ما توابع مانند چون printf استفاده می شود و یا حتی رشته ای که شخص دیگری 318 00:15:46,480 --> 00:15:50,600 برای شما نوشت، کنترل تحویل داده شد خط کد را به شخص دیگری 319 00:15:50,600 --> 00:15:51,290 خط به خط. 320 00:15:51,290 --> 00:15:53,770 این فقط ما نمی تواند آن را ببینید و ما واقعا نمی تواند آن را به تصویر می کشد در این 321 00:15:53,770 --> 00:15:57,620 برنامه به دلیل آن را در برخی دیگر فایل بر روی هارد دیسک 322 00:15:57,620 --> 00:16:00,000 نادانسته به ما. 323 00:16:00,000 --> 00:16:02,100 پس اجازه دهید در واقع کامپایل و در حال حاضر اجرای این. 324 00:16:02,100 --> 00:16:03,890 >> مطمئن مثبت. 325 00:16:03,890 --> 00:16:05,260 کامپایل، که پیشرفت. 326 00:16:05,260 --> 00:16:06,650 / مثبت است. 327 00:16:06,650 --> 00:16:08,020 من یک عدد صحیح مثبت بدهید. 328 00:16:08,020 --> 00:16:08,800 بیایید مشکل باشد. 329 00:16:08,800 --> 00:16:10,430 منفی 1. 330 00:16:10,430 --> 00:16:11,360 صفر است. 331 00:16:11,360 --> 00:16:13,370 بیایید آن 50. 332 00:16:13,370 --> 00:16:18,100 با تشکر برای 50، و بنابراین کنترل در حال حاضر بازگشته است. 333 00:16:18,100 --> 00:16:21,750 هر گونه سؤال، پس از آن، در آن؟ 334 00:16:21,750 --> 00:16:23,180 آره؟ 335 00:16:23,180 --> 00:16:25,630 >> [نامفهوم]. 336 00:16:25,630 --> 00:16:26,130 >> دوباره بگو. 337 00:16:26,130 --> 00:16:27,860 اوه، سوال خوبی است. 338 00:16:27,860 --> 00:16:31,100 بنابراین شما ممکن است به موازات توجه کنید که من نوع برش گوشه در هستم. 339 00:16:31,100 --> 00:16:35,420 در خط 12، من و گفت، بین المللی مثبت بین المللی را می گرداند، اما با همان 340 00:16:35,420 --> 00:16:39,660 منطق، آن را در حال حاضر می ایستد به همین دلیل است که در خط شش، میگویم که بازده اصلی 341 00:16:39,660 --> 00:16:44,040 یک int، اما آنچه که ما هرگز در هر یک از برنامه های ما بود؟ 342 00:16:44,040 --> 00:16:46,470 ایم اشاره ای به حال هرگز این بازگشت کلمه کلیدی. 343 00:16:46,470 --> 00:16:49,970 >> پس از آن معلوم است که در C، حداقل نسخه ای از آن است که ما با استفاده از 344 00:16:49,970 --> 00:16:55,750 ساخته شده در سال 1999، از نظر فنی، این است که اتفاق می افتد را برای شما به صورت خودکار. 345 00:16:55,750 --> 00:16:59,300 هر زمان شما پیاده سازی یک برنامه و شما پیاده سازی یک تابع به نام اصلی، 346 00:16:59,300 --> 00:17:04,230 که تابع صفر بازگشت به طور پیش فرض اگر شما می گویند نیست در غیر این صورت، 347 00:17:04,230 --> 00:17:05,849 و صفر فقط یک قرارداد است. 348 00:17:05,849 --> 00:17:09,430 جهان صفر نتیجه را برمی گرداند نشان می دهد که همه به خوبی، 349 00:17:09,430 --> 00:17:13,040 به طور موثر ما را با ترک چهار میلیارد همه چیز امکان پذیر است که می تواند به 350 00:17:13,040 --> 00:17:17,530 اشتباه است به طوری که اگر ما به یکی، که ممکن است یک کد مشخص این معنا است که 351 00:17:17,530 --> 00:17:18,310 چیزی را اشتباه رفت. 352 00:17:18,310 --> 00:17:20,589 ما می تواند دو بازگشت، که به معنی این چیز دیگر را اشتباه رفت. 353 00:17:20,589 --> 00:17:23,440 ما می توانیم چهار میلیارد بازگشت، که به معنی این چیز دیگر را اشتباه رفت. 354 00:17:23,440 --> 00:17:27,170 >> و اگر شما در حال حاضر در مورد خود فکر می کنم PC یا Mac، شما ممکن است به یاد آورید که 355 00:17:27,170 --> 00:17:29,610 گاهی اوقات شما می توانید پیام های خطا مرموز از نرم افزاری است که شما 356 00:17:29,610 --> 00:17:32,650 با استفاده از، و گاهی آن را یک انسان شرح دوستانه، اما وجود دارد 357 00:17:32,650 --> 00:17:35,265 اغلب یک کد یا یک عدد بر روی صفحه نمایش؟ 358 00:17:35,265 --> 00:17:37,800 اگر این به ذهن می آیند، فقط نگه داشتن چشم را برای آن. 359 00:17:37,800 --> 00:17:40,790 به طور معمول آنچه که در این کدهای با اشاره به. 360 00:17:40,790 --> 00:17:44,200 آنها در مایکروسافت ورد و دیگر برنامه ها به طوری که اگر شما فایل 361 00:17:44,200 --> 00:17:48,850 گزارش اشکال با شرکت، شما می توانید به آنها بگویید، اوه، من خطا شماره 45. 362 00:17:48,850 --> 00:17:51,750 و برخی از برنامه نویس در شرکت می توانید نگاه کنید که در او و یا 363 00:17:51,750 --> 00:17:54,940 کد و می گویند، آه، چرا که من ساخته شده این اشکال و که به همین دلیل کاربر 364 00:17:54,940 --> 00:17:56,240 کردم این ارسال. 365 00:17:56,240 --> 00:17:59,490 >> اما رک و پوست کنده، آن را فقط کمی منحرف و کمی خسته کننده به 366 00:17:59,490 --> 00:18:02,130 نتیجه گیری کرد که، حداقل ما چند برنامه برای اولین بار، بنابراین ما 367 00:18:02,130 --> 00:18:02,970 حذف شده است. 368 00:18:02,970 --> 00:18:07,450 ولی تمام این زمان هر یک از شما توابع اصلی مخفیانه این حال 369 00:18:07,450 --> 00:18:11,600 خط به طور خودکار برای شما اضافه شده کامپایلر، فقط با کنوانسیون به 370 00:18:11,600 --> 00:18:13,172 صرفه جویی در شما برخی از زمان. 371 00:18:13,172 --> 00:18:14,620 >> [نامفهوم]. 372 00:18:14,620 --> 00:18:16,250 >> شما لازم نیست به آن در اصلی. 373 00:18:16,250 --> 00:18:16,700 این خوب است. 374 00:18:16,700 --> 00:18:20,260 شما نیاز به آن، اگر شما پیاده سازی یک تابع مثل این. 375 00:18:20,260 --> 00:18:22,850 در غیر این صورت مسطح تابع نه کار می کند. 376 00:18:22,850 --> 00:18:24,480 اما در اصلی، لازم نیست. 377 00:18:24,480 --> 00:18:28,450 در یک یا دو هفته، خواهیم شروع به گرفتن به آن عادت یک بار ما می خواهم برای شروع 378 00:18:28,450 --> 00:18:29,690 دلالت خطا است. 379 00:18:29,690 --> 00:18:32,550 واقعا خوب سوال. 380 00:18:32,550 --> 00:18:36,880 >> استراحت خیلی سریع کلامی به ذکر است که جمعه این هفته، ما نمی خواهد شد صرف ناهار 381 00:18:36,880 --> 00:18:39,980 فی نفسه است، اما ما خواهید بود از شامی که با برخی از دانش آموزان و کارکنان. 382 00:18:39,980 --> 00:18:42,940 اگر شما می خواهم به ما بپیوندید، احساس رایگان برای رفتن به cs50.net/rsvp. 383 00:18:42,940 --> 00:18:45,030 6:00 PM جمعه این هفته. 384 00:18:45,030 --> 00:18:47,990 فضا، مثل همیشه، محدود، اما ما ادامه انجام این کار بر روی نزدیک به 385 00:18:47,990 --> 00:18:51,420 اساس بارگیری در این هفته اگر فضا این هفته اجرا می شود. 386 00:18:51,420 --> 00:18:56,160 >> بنابراین مطلب یا داستان جالب است که ما در سمت چپ روز دوشنبه بود که رشته ها در واقع می تواند 387 00:18:56,160 --> 00:19:00,520 توان به نمایه، که فقط بدان معناست که شما می توانید در اولین کاراکتر، 388 00:19:00,520 --> 00:19:03,770 شخصیت دوم، شخصیت سوم و غیره، زیرا شما می توانید 389 00:19:03,770 --> 00:19:07,860 به طور موثر از یک رشته فکر می کنم، مانند سلام، به عنوان در این مورد پنج 390 00:19:07,860 --> 00:19:09,670 حروف داخل جعبه. 391 00:19:09,670 --> 00:19:13,370 و شما می توانید در هر یک از آن دریافت کنید جعبه با چه نحو ما 392 00:19:13,370 --> 00:19:15,230 معرفی در روز دوشنبه؟ 393 00:19:15,230 --> 00:19:16,760 کسانی که براکت مربع بر روی صفحه کلید خود را. 394 00:19:16,760 --> 00:19:18,980 که فقط به معنای رفتن به محل صفر. 395 00:19:18,980 --> 00:19:22,840 >> ما شروع به شمارش صفر، بنابراین براکت صفر دلالت ساعت، یک براکت 396 00:19:22,840 --> 00:19:25,170 به معنای الکترونیکی، و غیره. 397 00:19:25,170 --> 00:19:28,490 و تمام زمانی که ما بوده ام با استفاده از رشته ها و تایپ کردن در "سلام" 398 00:19:28,490 --> 00:19:31,250 و "جهان" و چیزهای دیگر صفحه نمایش، آن را ذخیره شده 399 00:19:31,250 --> 00:19:32,820 در جعبه های شبیه به این. 400 00:19:32,820 --> 00:19:33,370 و حدس می زنم. 401 00:19:33,370 --> 00:19:37,470 هر جعبه چه نشان دهنده فیزیکی داخل کامپیوتر شما؟ 402 00:19:37,470 --> 00:19:38,250 >> [نامفهوم]. 403 00:19:38,250 --> 00:19:39,150 >> پوزش می طلبیم؟ 404 00:19:39,150 --> 00:19:39,580 >> حرف می باشد. 405 00:19:39,580 --> 00:19:44,760 >> بنابراین یک شخصیت، قطعا در مورد از رشته ها، و یک شخصیت است 406 00:19:44,760 --> 00:19:46,800 هشت بیت یا یک بایت است. 407 00:19:46,800 --> 00:19:49,550 بنابراین شما احتمالا حداقل مبهم آشنایی با این واقعیت که شما 408 00:19:49,550 --> 00:19:50,500 کامپیوتر دارای حافظه است. 409 00:19:50,500 --> 00:19:52,110 این دو نوع حافظه حداقل است. 410 00:19:52,110 --> 00:19:54,810 یکی از هارد دیسک است که در آن شما را نجات دهد چیزهای دائم، و این 411 00:19:54,810 --> 00:19:57,400 به طور معمول بزرگ است، بنابراین شما می توانید فیلم و موسیقی و غیره. 412 00:19:57,400 --> 00:20:04,010 >> سپس شما باید نوع دیگری از حافظه به نام RAM، R-A-M، دسترسی تصادفی 413 00:20:04,010 --> 00:20:07,510 حافظه، و این نوع از حافظه است استفاده شده است که زمانی که کامپیوتر شما است 414 00:20:07,510 --> 00:20:11,520 در حال اجرا است اما اگر شما از دست دادن قدرت یا خود را قالب های باتری، هر چیزی که ذخیره شده 415 00:20:11,520 --> 00:20:15,300 در رم از بین می رود اگر شما از دست دادن قدرت روی هم رفته به این دلیل آن نیست 416 00:20:15,300 --> 00:20:16,060 مداوم است. 417 00:20:16,060 --> 00:20:19,120 شما به طور معمول، این روزها، فرفره از آن، دو گیگابایت، شاید بیشتر. 418 00:20:19,120 --> 00:20:23,490 و حرکت صعودی از RAM است که آن را بسیار بسیار، بسیار سریعتر از هارد دیسک 419 00:20:23,490 --> 00:20:27,390 و یا حتی حالت جامد درایوهای این روزها، اما آن را به طور معمول گران تر است تا 420 00:20:27,390 --> 00:20:28,480 شما باید کمتر از آن است. 421 00:20:28,480 --> 00:20:32,400 >> بنابراین گفتگو امروز واقعا اشاره به RAM، آن نوع از حافظه که 422 00:20:32,400 --> 00:20:35,270 تنها وجود دارد در حالی که قدرت وجود دارد حال وارد شدن به کامپیوتر شما را تغذیه می کند. 423 00:20:35,270 --> 00:20:40,530 بنابراین، هنگامی که شما در H-E-L-L-O تایپ کنید، وارد کنید صفحه کلید، H است که در یک 424 00:20:40,530 --> 00:20:44,550 بایت RAM، E است که در یکی دیگر از بایت RAM، به عنوان 425 00:20:44,550 --> 00:20:45,800 بقیه کلمه. 426 00:20:45,800 --> 00:20:49,010 بنابراین چیزی که ما قادر بودند به یاد به زمان گذشته این بود. 427 00:20:49,010 --> 00:20:53,940 اجازه دهید من به جلو و باز کردن فایل که ما به نام string.c، و به یاد آوردن 428 00:20:53,940 --> 00:20:56,860 که آن را کمی به نظر می رسید چیزی شبیه به این. 429 00:20:56,860 --> 00:20:59,860 اجازه دهید من در واقع به رول و تغییر آن را به دقیقا همان چیزی است که آن را مانند نگاه، 430 00:20:59,860 --> 00:21:02,654 طول رشته از بازدید کنندگان. 431 00:21:02,654 --> 00:21:04,560 >> بنابراین در این برنامه به اینجا نگاه کنید. 432 00:21:04,560 --> 00:21:08,530 ما عبارتند از: کتابخانه CS50 تا که ما می توانیم رشته استفاده کنید. 433 00:21:08,530 --> 00:21:11,400 ما عبارتند از: io.h استاندارد بنابراین ما چون printf می توانید استفاده کنید. 434 00:21:11,400 --> 00:21:13,580 چرا ما شامل string.h؟ 435 00:21:13,580 --> 00:21:16,980 این در روز دوشنبه بود. 436 00:21:16,980 --> 00:21:18,230 بنابراین ما می خواستیم طول رشته. 437 00:21:18,230 --> 00:21:19,090 خ لنگ. 438 00:21:19,090 --> 00:21:21,470 مردم تصمیم سال پیش، اجازه دهید فقط موجز. 439 00:21:21,470 --> 00:21:24,290 در عوض خواستار آن را "طول رشته،" اجازه دهید آن را "خ لنگ" می نامند، و اجازه دهید 440 00:21:24,290 --> 00:21:28,540 شکل جهانی آن، و به طوری که آنچه در حال حاضر از دسترسی به string.h. 441 00:21:28,540 --> 00:21:29,390 >> این آشنا است. 442 00:21:29,390 --> 00:21:30,320 این آشنا است. 443 00:21:30,320 --> 00:21:31,450 این آشنا است. 444 00:21:31,450 --> 00:21:32,370 این کمی جدید است. 445 00:21:32,370 --> 00:21:35,420 در خط 22 - و ما دوباره به این، اما اکنون می دانیم - 446 00:21:35,420 --> 00:21:37,880 و شما فقط این کار را از داشتن مستندات و یا اگر به عنوان خوانده شده 447 00:21:37,880 --> 00:21:39,010 شما می دانستید C در حال حاضر - 448 00:21:39,010 --> 00:21:41,510 گاهی اوقات رشته می تواند پیچ ​​کردن. 449 00:21:41,510 --> 00:21:45,130 اگر کاربر واقعا خصمانه یا همکاری و او فقط 450 00:21:45,130 --> 00:21:49,450 هیچ چیزی در صفحه کلید تایپ نیست و یا انواع بسیار در صفحه کلید است که 451 00:21:49,450 --> 00:21:53,760 آن را به طور نسبی پایمال حافظه کامپیوتر، در تئوری، رشته می تواند بازگشت 452 00:21:53,760 --> 00:21:56,270 چیزی جز یک رشته از کاراکتر ها است. 453 00:21:56,270 --> 00:22:01,930 این می تواند یک ارزش خاص به نام بازگشت NULL در همه کلاه، N-U-L-L، و این 454 00:22:01,930 --> 00:22:03,390 فقط یک مقدار نگهبان به اصطلاح. 455 00:22:03,390 --> 00:22:08,010 این یک ارزش ویژه ای است که دلالت چیزی بد در این مورد اتفاق افتاده است. 456 00:22:08,010 --> 00:22:10,520 این عدم وجود یک رشته است. 457 00:22:10,520 --> 00:22:16,190 >> بنابراین من برای چک کردن به سادگی به طوری که تهی، داستان کوتاه مدت، خ لنگ و 458 00:22:16,190 --> 00:22:20,230 توابع دیگر که با C می آیند، اگر آنها انتظار دارند یک رشته، اما شما به آنها منتقل می 459 00:22:20,230 --> 00:22:23,630 فقدان یک رشته، اگر شما عبور آنها را پوچ، کامپیوتر و یا برنامه 460 00:22:23,630 --> 00:22:25,000 فقط بی درنگ سقوط خواهد کرد. 461 00:22:25,000 --> 00:22:25,610 این قطع خواهد شد. 462 00:22:25,610 --> 00:22:27,250 آن را پرتاب خواهد شد تا برخی از پیام خطا. 463 00:22:27,250 --> 00:22:28,690 چیزهای بد اتفاق خواهد افتاد. 464 00:22:28,690 --> 00:22:31,130 بنابراین حتی اگر این است که هنوز نه به خوبی تعریف شده - 465 00:22:31,130 --> 00:22:33,730 این حس بیشتر در هفته و یا دو - در خط 22، این است که فقط 466 00:22:33,730 --> 00:22:38,790 نمونه ای از چک کردن خطا دفاعی خود تنها در صورتی که یک بار از 467 00:22:38,790 --> 00:22:42,040 یک میلیون چیزی را اشتباه می رود، در حداقل برنامه من نیست سقوط خواهد کرد. 468 00:22:42,040 --> 00:22:45,960 >> بنابراین اگر S برابر چیزی بد، من این حلقه، و این بود 469 00:22:45,960 --> 00:22:47,710 جایی که ما تا به حال که دیگر قطعه جدید از نحو. 470 00:22:47,710 --> 00:22:51,580 من یک حلقه تکرار از صفر تا طول بازدید کنندگان. 471 00:22:51,580 --> 00:22:56,140 و سپس در اینجا، من یک چاپ از بازدید کنندگان بود براکت من، اما چرا من٪ C استفاده همه 472 00:22:56,140 --> 00:23:00,770 ناگهان به جای از٪ s هر چند ثانیه یک رشته است؟ 473 00:23:00,770 --> 00:23:02,110 این یک شخصیت است، درست است؟ 474 00:23:02,110 --> 00:23:06,560 S یک رشته براکت چیزی است، اما، براکت من جایی که من صفر است 475 00:23:06,560 --> 00:23:10,380 و یا یک یا دو، که یک فرد کاراکتری در رشته، و به همین ترتیب برای 476 00:23:10,380 --> 00:23:14,970 که، چون printf باید مطلع شود که آن در واقع یک شخصیت به انتظار. 477 00:23:14,970 --> 00:23:18,096 >> و سپس به یاد بیاورید، چه این را برنامه در واقع کاری انجام دهید؟ 478 00:23:18,096 --> 00:23:19,848 >> در ستون چاپ آن. 479 00:23:19,848 --> 00:23:21,120 >> بله، دقیقا. 480 00:23:21,120 --> 00:23:24,990 این فقط کلمه ای که من در نوع چاپ ستون، یکی از شخصیت ها در هر خط. 481 00:23:24,990 --> 00:23:26,190 بنابراین اجازه دهید این را دوباره ببینم. 482 00:23:26,190 --> 00:23:27,810 بنابراین رشته را. 483 00:23:27,810 --> 00:23:30,200 تهیه و تدوین OK. / رشته. 484 00:23:30,200 --> 00:23:35,560 اجازه دهید من در H-E-L-L-O تایپ کنید، را وارد کنید، و در واقع من آن را دریافت کند، یکی در هر خط. 485 00:23:35,560 --> 00:23:37,280 >> پس به من اجازه انجام یک بهینه سازی اینجا. 486 00:23:37,280 --> 00:23:40,240 اگر شما در مورد آن فکر می کنم، به خصوص اگر شما برنامه ریزی کرده ایم قبل، 487 00:23:40,240 --> 00:23:43,340 مسلما ناکارآمدی در خط 24. 488 00:23:43,340 --> 00:23:46,160 به عبارت دیگر، آن را نه لزوما بهترین طراحی. 489 00:23:46,160 --> 00:23:50,200 ساده، حداقل یک بار شما به یاد داشته باشید آنچه خ لنگ است، اما آن را 490 00:23:50,200 --> 00:23:52,640 انجام کاری گنگ به طور بالقوه. 491 00:23:52,640 --> 00:23:54,863 چه چیزی ممکن است؟ 492 00:23:54,863 --> 00:23:56,280 >> [نامفهوم]. 493 00:23:56,280 --> 00:23:56,800 >> دقیقا. 494 00:23:56,800 --> 00:24:00,340 آن را برای طول بازدید کنندگان چک هر زمان حتی اگر 495 00:24:00,340 --> 00:24:02,980 H-E-L-L-O همیشه به پنج حرف. 496 00:24:02,980 --> 00:24:05,490 هر زمان از طریق این حلقه، پنج در حال تغییر است. 497 00:24:05,490 --> 00:24:08,750 من ممکن است افزایش، اما آنچه طول در هر 498 00:24:08,750 --> 00:24:09,690 تکرار این حلقه؟ 499 00:24:09,690 --> 00:24:15,810 پنج، پنج، پنج و در عین حال من با این وجود درخواست این 500 00:24:15,810 --> 00:24:18,320 دوباره و دوباره و دوباره سوال. 501 00:24:18,320 --> 00:24:20,750 حالا رک و پوست کنده، کامپیوتر لعنتی سریع، هیچ کس رفتن به اطلاع 502 00:24:20,750 --> 00:24:23,780 تفاوت در این مورد، اما این نوع از تصمیم گیری های طراحی فقیر می تواند 503 00:24:23,780 --> 00:24:28,330 شروع به اضافه کردن اگر خود کامپایلر سعی نکنید برای رفع این کار را برای شما که 504 00:24:28,330 --> 00:24:30,630 آن را به طور معمول نیست، در حداقل در دستگاه. 505 00:24:30,630 --> 00:24:31,540 >> بنابراین من قصد دارم برای انجام این کار. 506 00:24:31,540 --> 00:24:34,580 من قصد دارم به اضافه کردن یک کاما بعد از اولین متغیر من، من. 507 00:24:34,580 --> 00:24:37,310 من قصد دارم به خودم دیگر متغیر، خواستار آن N، فقط با 508 00:24:37,310 --> 00:24:41,330 کنوانسیون اعداد، و پس از آن من رفتن را به او واگذار n مقدار رشته 509 00:24:41,330 --> 00:24:42,530 طول بازدید کنندگان. 510 00:24:42,530 --> 00:24:46,060 و سپس من رفتن به تغییر شرایط من به چه؟ 511 00:24:46,060 --> 00:24:51,960 من قصد دارم برای تغییر وضعیت من در حالی که من کمتر از n است. 512 00:24:51,960 --> 00:24:55,700 >> بنابراین در حال حاضر، چند بار من چک کردن طول کنندگان؟ 513 00:24:55,700 --> 00:25:00,110 یک بار، اما آن را OK من برای چک کردن در برابر نفر دوباره و دوباره به دلیل در حال حاضر کسانی که 514 00:25:00,110 --> 00:25:03,170 ارزش ها در واقع در حال تغییر نیست. 515 00:25:03,170 --> 00:25:06,020 در حال حاضر در حال حاضر، فقط می دانم که در هر زمان شما فراخوانی یک تابع، یک کمی وجود دارد 516 00:25:06,020 --> 00:25:09,930 هزینه های بالاسری، به اندازه کافی به شما دلسرد واقعا از همیشه با استفاده از توابع، اما 517 00:25:09,930 --> 00:25:12,750 بدیهی است زمانی که یک خط کد وجود دارد دوست دارم که - و خطوط را دریافت خواهد کرد 518 00:25:12,750 --> 00:25:15,490 جالب تر قبل از طولانی - که در آن فرصتی برای فکر می کنم وجود دارد، اگر من 519 00:25:15,490 --> 00:25:18,320 نوع این کد، که چگونه بسیاری از بار آن را اجرا خواهد کرد؟ 520 00:25:18,320 --> 00:25:20,950 شما در طول زمان شروع به دیدن اجرای برنامه های شما می تواند 521 00:25:20,950 --> 00:25:21,660 در واقع تغییر دهید. 522 00:25:21,660 --> 00:25:24,110 >> در واقع، یکی از مجموعه مسائل ایم انجام شده در سال گذشته شامل 523 00:25:24,110 --> 00:25:27,600 پیاده سازی، به عنوان شما ممکن است از یاد هفته صفر، یک جستجوگر طلسم، اما 524 00:25:27,600 --> 00:25:31,380 املا که به منظور حمایت از یک فرهنگ لغت 150،000 به علاوه 525 00:25:31,380 --> 00:25:32,860 کلماتی که ما به شما بچه ها را. 526 00:25:32,860 --> 00:25:37,100 شما را مجبور به نوشتن کد که بارهای این واژه ها را به رم، به طوری به 527 00:25:37,100 --> 00:25:40,700 جعبه مانند ما بر روی صفحه نمایش را دیدم یک لحظه پیش، و پس از آن به همان سرعتی که شما 528 00:25:40,700 --> 00:25:43,740 می تواند، شما باید قادر به پاسخ به سوال در فرم، این کلمه است 529 00:25:43,740 --> 00:25:44,280 غلط املایی؟ 530 00:25:44,280 --> 00:25:45,420 آیا این واژه اشتباه؟ 531 00:25:45,420 --> 00:25:46,770 آیا این واژه اشتباه؟ 532 00:25:46,770 --> 00:25:49,525 >> و در چیزی شبیه به آنچه که ما انجام شده در سال گذشته آن را به تبدیل شده است، 533 00:25:49,525 --> 00:25:53,500 البته در انتخاب کردن در صورت اختیاری، رقابت از انواع، به موجب آن 534 00:25:53,500 --> 00:25:59,470 دانش آموزانی که با استفاده از حافظه کمتر و کمتر زمان، چرخه های CPU کمتر، تا پایان 535 00:25:59,470 --> 00:26:02,640 حباب تا بالای کمی هیئت مدیره رهبر یا رتبه بندی که ما در آن قرار داده 536 00:26:02,640 --> 00:26:04,770 پیام خصوصی به این دوره را به عنوان ایم در سال های گذشته انجام می شود. 537 00:26:04,770 --> 00:26:08,100 پس دوباره، کاملا اختیاری است، اما این به فرصت های طراحی صحبت می کند 538 00:26:08,100 --> 00:26:11,250 است که پیش زمانی که ما شروع به ساختمان بالای برخی از این 539 00:26:11,250 --> 00:26:14,010 بلوک های ساختمان های اساسی. 540 00:26:14,010 --> 00:26:16,780 >> پس به من اجازه بازگشت به این نمودار برای فقط یک لحظه و کمی آشکار 541 00:26:16,780 --> 00:26:17,610 چیزی بیشتر. 542 00:26:17,610 --> 00:26:21,400 این در واقع یک رشته است، و ما گرفته ایم استفاده از چند کتابخانه، 543 00:26:21,400 --> 00:26:25,150 io.h استاندارد است که - 544 00:26:25,150 --> 00:26:26,110 >> چون printf. 545 00:26:26,110 --> 00:26:27,860 >> چون printf، در میان چیزهای دیگر. 546 00:26:27,860 --> 00:26:31,540 cs50.h، است که بین المللی و دریافت رشته و غیره، string.h، که 547 00:26:31,540 --> 00:26:32,570 خ لنگ بود. 548 00:26:32,570 --> 00:26:34,800 اما معلوم است هنوز دیگری وجود دارد. 549 00:26:34,800 --> 00:26:38,540 رک و پوست کنده، مقدار زیادی و مقدار زیادی از هدر وجود دارد فایل هایی که اعلام توابع 550 00:26:38,540 --> 00:26:43,320 برای کتابخانه ها، اما این ctype.h است در واقع رفتن تا حدودی 551 00:26:43,320 --> 00:26:46,900 چون من قصد دارم به نفع به جلو بروید و پیاده سازی یک 552 00:26:46,900 --> 00:26:48,120 برنامه های دیگر در اینجا. 553 00:26:48,120 --> 00:26:52,420 >> اجازه دهید من به جلو و باز کردن چیزی من در پیش نامیده می شود نوشت 554 00:26:52,420 --> 00:26:55,750 capitalize.c، و اجازه دهید نگاهی به چگونگی کارکرد این مدار. 555 00:26:55,750 --> 00:27:00,340 توجه کنید که من با استفاده از، در این نسخه از آن، سه فایل های آشنا. 556 00:27:00,340 --> 00:27:04,110 توجه کنید که در خط 18، من گرفتن یک خط از متن. 557 00:27:04,110 --> 00:27:07,660 توجه کنید که در خط 21، من این ادعا که کد زیر را در حال رفتن به 558 00:27:07,660 --> 00:27:12,170 سرمایه گذاری، هر آنچه که کاربر تایپ ، و چه هستم من انجام این کار؟ 559 00:27:12,170 --> 00:27:13,300 خوب، من گرفتن - 560 00:27:13,300 --> 00:27:14,750 درس های آموخته شده از زمان گذشته - 561 00:27:14,750 --> 00:27:18,370 من اعلام i و n و تکرار بر شخصیت در رشته. 562 00:27:18,370 --> 00:27:22,720 و سپس آنچه این بلوک است. کد را در خط 24 تا 27 563 00:27:22,720 --> 00:27:24,550 انجام کار در شرایط خارج از حرفه یا فن خاصی است؟ 564 00:27:24,550 --> 00:27:27,766 565 00:27:27,766 --> 00:27:29,730 >> حروف کوچک نامه. 566 00:27:29,730 --> 00:27:30,430 >> دقیقا. 567 00:27:30,430 --> 00:27:35,920 اگر براکت - بنابراین اگر i ام شخصیت ها است که خاص 568 00:27:35,920 --> 00:27:40,220 کاراکتر در رشته، بزرگتر از یا مساوی به کوچک a و - 569 00:27:40,220 --> 00:27:42,670 به یاد بیاورید که دو برابر & نشان و - 570 00:27:42,670 --> 00:27:46,810 و شخصیت همان، براکت من، کمتر یا مساوی به کوچک Z، 571 00:27:46,810 --> 00:27:50,600 که بدان معنی است که یک یا ب یا ج یا نقطه، نقطه، نقطه، یا Z، که به معنی 572 00:27:50,600 --> 00:27:51,340 حروف کوچک می باشد. 573 00:27:51,340 --> 00:27:52,900 چه من می خواهم به انجام این کار در آن صورت است؟ 574 00:27:52,900 --> 00:27:55,010 خوب، من می توانم این تا حدودی انجام دهد cryptically، اما 575 00:27:55,010 --> 00:27:56,160 اجازه دهید در این فاصله کسی را دست انداختن. 576 00:27:56,160 --> 00:28:00,210 >> من قصد دارم به چون printf تماس بگیرید، چاپ٪ چون من می خواهم به چاپ مجدد این 577 00:28:00,210 --> 00:28:01,580 شخصیت بر روی صفحه نمایش. 578 00:28:01,580 --> 00:28:06,650 من سپس رفتن به براکت من، شخصیت i ام، پس چرا 579 00:28:06,650 --> 00:28:12,330 من انجام این ترفند کوچک در اینجا، کوچک پایتخت منفی؟ 580 00:28:12,330 --> 00:28:16,352 چه چیزی است که رفتن را به من، به طور کلی؟ 581 00:28:16,352 --> 00:28:18,600 >> [نامفهوم]. 582 00:28:18,600 --> 00:28:19,390 >> دقیقا. 583 00:28:19,390 --> 00:28:20,860 من واقعا به یاد داشته باشید - 584 00:28:20,860 --> 00:28:24,390 آن 65 برای پایتخت A. من واقعا نمی بود به یاد داشته باشید چه کوچک است، 585 00:28:24,390 --> 00:28:25,540 اما مهم نیست. 586 00:28:25,540 --> 00:28:26,580 کامپیوتر می داند. 587 00:28:26,580 --> 00:28:30,380 بنابراین با گفتن، کوچک منهای سرمایه، آن را عجیب و غریب می شود 588 00:28:30,380 --> 00:28:33,530 کم کردن یک کاراکتر از دیگری، اما کاراکتر زیر هود چه هستند؟ 589 00:28:33,530 --> 00:28:34,520 آنها اعداد فقط. 590 00:28:34,520 --> 00:28:36,980 بنابراین هر آنچه این اعداد، اجازه دهید کامپیوتر آن را به یاد داشته باشید 591 00:28:36,980 --> 00:28:38,240 نه از من انسان است. 592 00:28:38,240 --> 00:28:41,710 >> بنابراین سرمایه منهای کوچک رفتن تفاوت را به من بدهد. 593 00:28:41,710 --> 00:28:45,370 این اتفاق می افتد به 32، و خواهد بود که مورد حروف کوچک ب و سرمایه B 594 00:28:45,370 --> 00:28:45,930 و غیره. 595 00:28:45,930 --> 00:28:47,710 این سازگار باقی می ماند، خوشبختانه. 596 00:28:47,710 --> 00:28:51,930 بنابراین من اساسا گفت، کوچک نامه، تفریق کردن که 597 00:28:51,930 --> 00:28:55,340 تفاوت استاندارد و به طور موثر تغییرات من براکت از 598 00:28:55,340 --> 00:28:59,400 کوچک، البته، بزرگ، بدون این که من واقعا نیاز به فکر می کنم 599 00:28:59,400 --> 00:29:03,040 یا به یاد داشته باشید، چه بودند شماره های ما صحبت در مورد زمانی که هشت 600 00:29:03,040 --> 00:29:04,800 داوطلبان تا روی صحنه آمد؟ 601 00:29:04,800 --> 00:29:08,800 در حال حاضر در عین حال، در دیگری، اگر آن نیست حروف کوچک به عنوان تعیین 602 00:29:08,800 --> 00:29:10,400 24 خط، فقط آن را چاپ کنید. 603 00:29:10,400 --> 00:29:12,590 من فقط می خواهم به لمس شخصیت های بودند که 604 00:29:12,590 --> 00:29:14,410 در واقع در ابتدا کوچک. 605 00:29:14,410 --> 00:29:15,150 >> پس ببینیم این اجازه. 606 00:29:15,150 --> 00:29:17,400 اطمینان سرمایه گذاری. 607 00:29:17,400 --> 00:29:18,470 وارد شده، OK را بزنید. 608 00:29:18,470 --> 00:29:19,730 / سرمایه گذاری. 609 00:29:19,730 --> 00:29:23,530 و اجازه دهید من در H-E-L-L-O تایپ در حروف کوچک وارد کنید. 610 00:29:23,530 --> 00:29:26,370 و متوجه است که آن را تبدیل به بزرگ. 611 00:29:26,370 --> 00:29:27,940 اجازه دهید من این کار را دوباره با یک کلمه متفاوت است. 612 00:29:27,940 --> 00:29:32,720 چگونه در مورد D-A-V-I-D با D اول به عنوان یک نام با حروف بزرگ به طور معمول است؟ 613 00:29:32,720 --> 00:29:33,560 را وارد کنید. 614 00:29:33,560 --> 00:29:34,870 توجه داشته باشید آن را هنوز هم درست است. 615 00:29:34,870 --> 00:29:40,250 این فقط خروجی که برای اولین بار بدون تغییر D از طریق آن دیگری ساخت. 616 00:29:40,250 --> 00:29:42,170 >> پس در ذهن داشته باشیم، پس از آن، زن و شوهر از چیزهایی که در اینجا. 617 00:29:42,170 --> 00:29:45,060 اول، اگر شما همیشه می خواهید به بررسی دو شرایط در یک بار، شما می توانید و آنها را 618 00:29:45,060 --> 00:29:46,500 ما هم به عنوان پیش بینی. 619 00:29:46,500 --> 00:29:49,900 شما می توانید کاراکتر ها را در این راه مقایسه و به طور موثر درمان کاراکترها را به عنوان 620 00:29:49,900 --> 00:29:53,050 اعداد، اما رک و پوست کنده، این است تا لعنتی مرموز من قصد دارم هرگز به خاطر داشته باشید 621 00:29:53,050 --> 00:29:56,510 چگونه به آمده تا با این کار را از ابتدا بدون استدلال از طریق آن کاملا 622 00:29:56,510 --> 00:29:57,140 کمی از زمان. 623 00:29:57,140 --> 00:30:00,590 >> آن را نمی خوب بود اگر کسی از یک تابع نامیده می شود وجود دارد 624 00:30:00,590 --> 00:30:05,390 پایین آوردن است که می تواند برای من درست پاسخ دهد و یا نادرست، این شخصیت کوچک است؟ 625 00:30:05,390 --> 00:30:09,350 خب خوشبختانه، هر کس که نوشت ctype.h دقیقا. 626 00:30:09,350 --> 00:30:15,540 اجازه بدهید من در اینجا و اضافه کردن ctype ج انواع، و در حال حاضر اجازه دهید من به پایین و 627 00:30:15,540 --> 00:30:18,820 بازنویسی این خط به شرح زیر است. 628 00:30:18,820 --> 00:30:27,510 >> بنابراین اگر آن را به نام پایین تر است، من ادعا می کنند، براکت من، پس من قصد دارم به حذف 629 00:30:27,510 --> 00:30:29,400 این دو خط در دسترس نباشد. 630 00:30:29,400 --> 00:30:32,570 بنابراین در حال حاضر شخص دیگری، من امیدوار، نوشت یک تابع نامیده می شود پایین تر است، و آن را 631 00:30:32,570 --> 00:30:36,250 تبدیل کردن آنها و به آنها اعلام کرد آن داخل ctype.h. 632 00:30:36,250 --> 00:30:39,480 و در حال حاضر من قصد دارم به ترک خط 27 به تنهایی، من قصد دارم به ترک خط 31 633 00:30:39,480 --> 00:30:41,890 به تنهایی، اما متوجه چقدر من تا کد من تنگ تر. 634 00:30:41,890 --> 00:30:42,690 در حال حاضر پاک کن. 635 00:30:42,690 --> 00:30:47,250 کمتر این مشکل را از طریق نگاه زیرا در حال حاضر تابع، علاوه بر این، 636 00:30:47,250 --> 00:30:50,080 تا زیبا و آن را به نام فقط آیا آنچه در آن می گوید. 637 00:30:50,080 --> 00:30:51,520 >> بنابراین در حال حاضر من قصد دارم برای صرفه جویی در این. 638 00:30:51,520 --> 00:30:52,930 من قصد دارم برای زوم کردن. 639 00:30:52,930 --> 00:30:56,650 و فقط به عنوان در ابتدا شما می توانید Booleans، مقادیر بولی درست است یا 640 00:30:56,650 --> 00:31:01,530 نادرست، که دقیقا همان چیزی است به طور موثر کاهش می گرداند. 641 00:31:01,530 --> 00:31:02,960 به من اجازه کامپایل مجدد. 642 00:31:02,960 --> 00:31:04,500 اجازه بدهید من دوباره اجرا کنید. 643 00:31:04,500 --> 00:31:07,350 و در حال حاضر اجازه دهید آن را دوباره سعی کنید، H-E-L-L-O، وارد کنید. 644 00:31:07,350 --> 00:31:07,970 این خیلی خوب است. 645 00:31:07,970 --> 00:31:10,150 و دوباره آن را امتحان کنید، مطمئن شوید که من چیزی پیچ نیست. 646 00:31:10,150 --> 00:31:11,670 است که به عنوان خوبی با حروف بزرگ. 647 00:31:11,670 --> 00:31:14,190 >> اما این به اندازه کافی خوب نیست، زیرا دیگر چیزی که من هرگز به 648 00:31:14,190 --> 00:31:19,090 به یاد داشته باشید مگر اینکه من را از طریق این واقعا کار کند با دقت، می گویند، کاغذ 649 00:31:19,090 --> 00:31:19,920 این خط لعنتی. 650 00:31:19,920 --> 00:31:23,450 آیا آن را نمی شود خوب اگر وجود داشت یک تابع نامیده می شود به بالا؟ 651 00:31:23,450 --> 00:31:26,930 به خوبی از آن خارج وجود دارد تبدیل می شود در ctype.h است نیز هست. 652 00:31:26,930 --> 00:31:30,150 من قصد دارم به جلو بروید و تایپ کنید - 653 00:31:30,150 --> 00:31:31,340 اجازه دهید من را که پشت خط. 654 00:31:31,340 --> 00:31:36,430 به جای این، اجازه دهید من جلو بروید و می گویند، تعویض٪ ج 655 00:31:36,430 --> 00:31:42,110 نتیجه فراخوانی این تابع به بالا در شخصیت i ام از بازدید کنندگان. 656 00:31:42,110 --> 00:31:45,430 و در حال حاضر متوجه آن گرفتن کوچک و متعادل کننده شده است. 657 00:31:45,430 --> 00:31:48,870 من به یاد داشته باشید که چگونه بسیاری از پرانتز باز و بسته ام. 658 00:31:48,870 --> 00:31:50,050 >> بنابراین در حال حاضر آن را حتی پاک کننده. 659 00:31:50,050 --> 00:31:53,460 در حال حاضر این برنامه بهتر و بهتر طراحی شده مسلما به دلیل آن 660 00:31:53,460 --> 00:31:56,450 خیلی، خیلی بیشتر قابل خواندن است اما آن را بدون اجازه صحیح است. 661 00:31:56,450 --> 00:31:57,600 اطمینان سرمایه گذاری. 662 00:31:57,600 --> 00:31:58,930 / سرمایه گذاری. 663 00:31:58,930 --> 00:32:03,220 H-E-L-L-O. اجازه دهید آن را دوباره اجرا، D-A-V-I-D. خوب، پس ما هنوز در حال 664 00:32:03,220 --> 00:32:04,250 خیلی خوب شکل. 665 00:32:04,250 --> 00:32:06,030 >> اما در حال حاضر به بالا. 666 00:32:06,030 --> 00:32:09,720 پیشنهاد می کنم که یکی بیشتر وجود دارد پالایش ما می تواند مطمئن است که خواهد بود 667 00:32:09,720 --> 00:32:12,820 واقعا خوب، که واقعا می تواند سفت تا از این کد و واقعا به ما پنج 668 00:32:12,820 --> 00:32:15,150 از پنج برای طراحی، به عنوان مثال. 669 00:32:15,150 --> 00:32:16,510 چه خوب خواهد بود برای خلاص شدن از؟ 670 00:32:16,510 --> 00:32:20,770 خوب، نگاه لعنتی طولانی این بلوک کد فقط برای انجام کاری ساده است. 671 00:32:20,770 --> 00:32:23,850 >> در حال حاضر به عنوان به کنار، که شما ممکن است دیده می شود در بخش فوق العاده این گذشته 672 00:32:23,850 --> 00:32:27,570 آخر هفته، شما به شدت نیاز به آکولاد زمانی که شما فقط باید یک 673 00:32:27,570 --> 00:32:32,180 خط از کد، حتی اگر ما پیشنهاد نگه داشتن آنها به طوری که آن را می سازد 674 00:32:32,180 --> 00:32:36,190 روشن تر، مانند U-شکل خراش بلوک، چه در داخل شعبه است. 675 00:32:36,190 --> 00:32:40,170 اما آن را نمی شود خوب می شود اگر به بالا، زمانی که ورودی آن، آن را تبدیل 676 00:32:40,170 --> 00:32:44,730 بزرگ اگر آن نیست، و چه فوق العاده در مورد مخالف اگر 677 00:32:44,730 --> 00:32:47,210 در حال حاضر بزرگ است؟ 678 00:32:47,210 --> 00:32:49,620 فقط آن را از طریق عبور و آن را ترک تنهایی. 679 00:32:49,620 --> 00:32:50,660 >> شاید آن را ندارد که. 680 00:32:50,660 --> 00:32:52,990 من می توانید سعی کنید و فقط امیدوارم که آن را ندارد، اما اجازه دهید من 681 00:32:52,990 --> 00:32:54,450 معرفی یک چیز دیگر. 682 00:32:54,450 --> 00:32:57,440 به جای استفاده از این ساخته شده است در ترمینال پنجره پایین در اینجا، به یاد می آورند که 683 00:32:57,440 --> 00:33:01,130 این آیکون مربع سیاه و سفید به شما می دهد پنجره ترمینال بزرگتر است که من می توانم پر 684 00:33:01,130 --> 00:33:02,260 صفحه نمایش اگر من می خواهم؟ 685 00:33:02,260 --> 00:33:05,820 بنابراین آن را تبدیل کردن آنها نوعی از عجیب نام، اما این چیزها نامیده می شود وجود دارد 686 00:33:05,820 --> 00:33:10,970 صفحات man، صفحات کتابچه راهنمای کاربر، مرد برای کوتاه مدت، و من می توانم این دسترسی 687 00:33:10,970 --> 00:33:14,515 تایپ کردن مرد - 688 00:33:14,515 --> 00:33:15,570 چه من می خواهم به نوع؟ 689 00:33:15,570 --> 00:33:17,830 مرد به بالا. 690 00:33:17,830 --> 00:33:21,090 >> و در حال حاضر اگر وجود دارد وجود دارد متوجه عمل در داخل کامپیوتر، 691 00:33:21,090 --> 00:33:23,970 این مورد لوازم خانگی، است که فقط سیستم عامل لینوکس، این رفتن 692 00:33:23,970 --> 00:33:27,920 به من مجموعه ای تا حدودی مرموز از خروجی، اما شما هم بیش از آن 693 00:33:27,920 --> 00:33:31,720 همیشه آن را فرمت تقریبا همان طوری که شما شروع برای رسیدن به آن استفاده می شود. 694 00:33:31,720 --> 00:33:35,130 توجه داشته باشید در بالا به بالا و ظاهرا همان مستندات است 695 00:33:35,130 --> 00:33:35,680 برای کاهش. 696 00:33:35,680 --> 00:33:38,740 هر کس آن را نوشته بود برش برخی از گوشه و آن همه را در یک صفحه قرار داده است. 697 00:33:38,740 --> 00:33:40,720 هدف این چیزها در زندگی است برای تبدیل 698 00:33:40,720 --> 00:33:42,780 نامه ای به بالا و یا کوچک. 699 00:33:42,780 --> 00:33:46,290 >> توجه داشته باشید که در زیر خلاصه، صفحه مرد من تدریس چه فایل من 700 00:33:46,290 --> 00:33:48,130 که شامل چیزی که برای استفاده از این. 701 00:33:48,130 --> 00:33:51,320 آن را به من دادن امضا برای این توابع، هر دو از آنها، حتی 702 00:33:51,320 --> 00:33:53,510 هر چند که ما در حال حاضر تنها حدود یک مراقبت. 703 00:33:53,510 --> 00:33:54,730 در اینجا این است که در حال حاضر توصیف است. 704 00:33:54,730 --> 00:33:58,800 تبدیل نامه به بالا ج به بزرگ در صورت امکان. 705 00:33:58,800 --> 00:34:02,280 >> هنوز که آموزنده است، اما اجازه دهید من در حال حاضر تحت مقدار بازگشتی نگاه کنید، چیزی که 706 00:34:02,280 --> 00:34:03,520 که پشت دست. 707 00:34:03,520 --> 00:34:08,600 بنابراین مقدار برگشتی این است که از نامه تبدیل یا C اگر 708 00:34:08,600 --> 00:34:09,870 تبدیل امکان پذیر نیست. 709 00:34:09,870 --> 00:34:11,202 ج چیست؟ 710 00:34:11,202 --> 00:34:12,560 >> شخصیت اصلی. 711 00:34:12,560 --> 00:34:15,370 >> شخصیت اصلی است و ما می دانیم که، دوباره، تا رفتن به 712 00:34:15,370 --> 00:34:19,179 خلاصه، و هر کس این را نوشتهاید تابع فقط تصمیم گرفت که ورودی 713 00:34:19,179 --> 00:34:22,909 به بالا و پایین تر است خودسرانه رفتن به آن می شود ج. 714 00:34:22,909 --> 00:34:24,909 آنها می توانستند آن را به نام هر چیزی آنها می خواهند، اما آنها آن را نگه داشته 715 00:34:24,909 --> 00:34:26,270 ساده به عنوان ج. 716 00:34:26,270 --> 00:34:27,880 بنابراین من مرد مشورت کرده ایم. 717 00:34:27,880 --> 00:34:31,870 این جمله به من اطمینان که اگر حروف کوچک نیست، آن را 718 00:34:31,870 --> 00:34:34,969 رفتن به فقط من را C هستند، که کامل، که به معنی من می توانم خلاص شدن از شر 719 00:34:34,969 --> 00:34:36,199 شرایط دیگری من. 720 00:34:36,199 --> 00:34:39,679 >> پس به من اجازه رفتن به نرمافزاری gedit، و اکنون اجازه دهید من فقط این کار را. 721 00:34:39,679 --> 00:34:41,960 من قصد دارم برای کپی کردن دستور printf من. 722 00:34:41,960 --> 00:34:45,969 من قصد دارم به پیش بروید و راست در داخل حلقه چاپ، و دریافت 723 00:34:45,969 --> 00:34:48,760 خلاص از هم اکنون این کل اگر ساختار. 724 00:34:48,760 --> 00:34:51,860 بود یک ایده بد نیست، و آن را بسیار بود بسیار درست و سازگار با 725 00:34:51,860 --> 00:34:54,100 همه چیز موعظه ایم، اما فقط لازم نیست. 726 00:34:54,100 --> 00:34:57,070 به محض این که شما متوجه بعضی از کتابخانه تابع این است که شخص دیگری وجود دارد 727 00:34:57,070 --> 00:35:01,340 نوشت، و یا شاید شما نوشت در نقاط دیگر فایل، شما می توانید آن را و واقعا استفاده 728 00:35:01,340 --> 00:35:02,690 شروع به سفت کردن کد. 729 00:35:02,690 --> 00:35:06,080 >> و وقتی که من می گویند که چیزهایی مانند سبک خوب، این واقعیت است که این فرد به نام 730 00:35:06,080 --> 00:35:11,490 عمل به بالا، و یا قبلا پایین تر است زیبا و مفید است زیرا 731 00:35:11,490 --> 00:35:12,900 آنها بسیار توصیفی است. 732 00:35:12,900 --> 00:35:16,120 شما نمی خواهید به تماس توابع خود x و y و z، که 733 00:35:16,120 --> 00:35:19,620 بسیار، به این معنی بسیار کمتر است. 734 00:35:19,620 --> 00:35:25,160 هر گونه سؤال در آن سری از پیشرفت؟ 735 00:35:25,160 --> 00:35:28,010 >> بنابراین آن را می گویند یکی از کافی takeaways است و حتی به عنوان مشکل خود را 736 00:35:28,010 --> 00:35:30,960 مشکل مجموعه را به صورت مجموعه - شاید یکی، اما قطعا P مجموعه دو و بعد، حتی 737 00:35:30,960 --> 00:35:34,380 زمانی که آنها درست است لزوما منظور آنها فقط بی نقص هستند 738 00:35:34,380 --> 00:35:36,155 رتبهدهی نشده است و یا به خصوص به خوبی طراحی شده است. 739 00:35:36,155 --> 00:35:38,420 که محور دیگر به شروع به فکر کردن در مورد. 740 00:35:38,420 --> 00:35:41,730 بنابراین این رشته از داخل خود بود حافظه کامپیوتر است، اما اگر شما یک 741 00:35:41,730 --> 00:35:46,180 تمام دسته ای از کاراکترها مانند H-E-L-L-O در داخل حافظه RAM و فرض 742 00:35:46,180 --> 00:35:51,330 که شما را در برنامه های خود را دریافت رشته تماس بگیرید چندین بار به طوری که شما 743 00:35:51,330 --> 00:35:54,200 تماس گرفتن رشته یک بار، و سپس شما تماس گرفتن رشته دوباره. 744 00:35:54,200 --> 00:35:55,880 خب، چه رفتن به در طول زمان اتفاق می افتد؟ 745 00:35:55,880 --> 00:35:59,170 >> به عبارت دیگر، اگر شما یک خط کد، البته خارج از چهار چوب، مانند 746 00:35:59,170 --> 00:36:02,120 رشته ها می شود - 747 00:36:02,120 --> 00:36:02,960 اجازه دهید این کار را. 748 00:36:02,960 --> 00:36:05,270 نام رشته برابر دریافت رشته است. 749 00:36:05,270 --> 00:36:08,590 بنابراین فرض کنید که خط از کد، به معنای کاربر و یا نام خود را بپرسید. 750 00:36:08,590 --> 00:36:14,580 این خط بعدی کد به معنای بپرسید کاربر یا مدرسه خود، و 751 00:36:14,580 --> 00:36:15,920 این خط بعدی، و غیره. 752 00:36:15,920 --> 00:36:18,150 فرض کنید که ما در حفظ و درخواست کاربر برای یکی دیگر از و 753 00:36:18,150 --> 00:36:19,750 رشته دیگر و دیگر. 754 00:36:19,750 --> 00:36:22,390 آنها در حال رفتن به ماندن در حافظه در همان زمان. 755 00:36:22,390 --> 00:36:24,280 یکی است که قصد ندارم به جامه دیگر. 756 00:36:24,280 --> 00:36:26,420 مدرسه دیگر بازنویسی کنید. 757 00:36:26,420 --> 00:36:28,520 اما جایی که آنها تمام انجام دهد تا پایان در حافظه؟ 758 00:36:28,520 --> 00:36:32,030 >> خوب، اگر ما شروع به کشیدن بر روی صفحه نمایش، که ما می توانیم این چیز استفاده کنید 759 00:36:32,030 --> 00:36:35,800 در اینجا مانند یک تخته سیاه، در صورتی که این سیاه و سفید مستطیل نشان دهنده کامپیوتر من 760 00:36:35,800 --> 00:36:39,800 حافظه، من قصد دارم برای شروع به خودسرانه تقسیم آن را به مربع های کوچک، 761 00:36:39,800 --> 00:36:42,120 هر کدام نشان دهنده یک بایت از حافظه است. 762 00:36:42,120 --> 00:36:46,560 صادقانه بگویم، اگر شما دارای یک گیگابایت RAM این روزها، شما باید یک میلیارد بایت 763 00:36:46,560 --> 00:36:49,540 حافظه در کامپیوتر شما، به طوری که یک میلیارد از این مربع. 764 00:36:49,540 --> 00:36:52,110 بنابراین کافی است که به می گویند، این واقعا به مقیاس نیست. 765 00:36:52,110 --> 00:36:58,250 >> اما ما می توانیم به رسم همه از این به وضوح به مقیاس مربع، و این 766 00:36:58,250 --> 00:37:01,260 در مجموع نشان دهنده حافظه کامپیوتر من. 767 00:37:01,260 --> 00:37:03,136 در حال حاضر ما فقط انجام نقطه، نقطه، نقطه. 768 00:37:03,136 --> 00:37:06,260 بنابراین به عبارت دیگر، هنگامی که من در حال حاضر اعلان کاربر با رشته GET به من بدهد 769 00:37:06,260 --> 00:37:07,350 رشته، چه اتفاقی می افتد؟ 770 00:37:07,350 --> 00:37:14,270 در صورتی که کاربر در انواع در "سلام" است که به پایان می رسد در H-E-L-L-O. اما فرض کنید که 771 00:37:14,270 --> 00:37:15,720 سپس کاربر انواع در - 772 00:37:15,720 --> 00:37:17,250 در واقع، من باید انجام نداده است سلام از آنجا که ما در حال درخواست 773 00:37:17,250 --> 00:37:18,330 آنها را برای نام خود را. 774 00:37:18,330 --> 00:37:20,580 پس بیایید برگردید اگر من می توانید این کار را انجام دهند. 775 00:37:20,580 --> 00:37:26,130 >> بنابراین اگر من در نوع D-A-V-I-D نام من، اما به یاد می آورند که خط دوم از 776 00:37:26,130 --> 00:37:29,220 کد دوباره رشته مدرسه خود را به دریافت کنید. 777 00:37:29,220 --> 00:37:32,090 این کلمه از کجا است که کاربر انواع در رفتن به بعدی؟ 778 00:37:32,090 --> 00:37:38,290 خوب، شاید این رفتن برای رفتن به H-A-R-V-A-R-D. بنابراین حتی اگر من 779 00:37:38,290 --> 00:37:41,560 آن را به عنوان دو ردیف کشیده شده، این است که فقط یک دسته کامل از بایت خود را در 780 00:37:41,560 --> 00:37:42,710 RAM کامپیوتر است. 781 00:37:42,710 --> 00:37:46,560 یک مشکل وجود دارد در حال حاضر در حال حاضر اگر به خاطر من با استفاده از RAM در این بسیار مناسب 782 00:37:46,560 --> 00:37:49,910 اما نوع راه ساده و بی تکلف، آنچه می تواند به شما نه ظاهرا تشخیص؟ 783 00:37:49,910 --> 00:37:52,640 784 00:37:52,640 --> 00:37:54,680 از کجا شروع می شود و جایی که یکی از به پایان می رسد، درست است؟ 785 00:37:54,680 --> 00:37:55,860 آنها نوع مات با یکدیگر هستند. 786 00:37:55,860 --> 00:37:57,920 >> بنابراین آن را تبدیل از کامپیوتر آیا انجام این کار نیست. 787 00:37:57,920 --> 00:38:04,720 اجازه دهید من در واقع در زمان حرکت چند حرف و به جای آن از دانشگاه هاروارد 788 00:38:04,720 --> 00:38:09,570 رفتن بلافاصله پس نام کاربر، کاربر در واقع می شود، در پشت 789 00:38:09,570 --> 00:38:12,000 صحنه، که از کاراکتر ویژه ای وارد شده توسط 790 00:38:12,000 --> 00:38:13,885 کامپیوتر برای او و یا او. 791 00:38:13,885 --> 00:38:19,470 / 0، در غیر این صورت به عنوان شخصیت پوچ شناخته شده است آزاردهنده به نام N-U-L، نه 792 00:38:19,470 --> 00:38:22,190 N-U-L-L، اما شما نوشتن آن به عنوان / 0. 793 00:38:22,190 --> 00:38:27,130 این فقط تمام بیت های صفر نشانگر در بین اولین کلمه که به کاربر 794 00:38:27,130 --> 00:38:28,290 تایپ و دوم. 795 00:38:28,290 --> 00:38:33,020 >> بنابراین دانشگاه هاروارد واقع در حال حاضر به پایان می رسد تا به عنوان این دنباله ای از کاراکتر ها 796 00:38:33,020 --> 00:38:36,110 و یکی بیشتر / 0. 797 00:38:36,110 --> 00:38:41,690 بنابراین به عبارت دیگر، با داشتن این ارزش نگهبان، هشت صفر هم پیوسته 798 00:38:41,690 --> 00:38:45,220 بیت، شما هم اکنون می توانید شروع به تشخیص یکی از شخصیت ها از دیگری. 799 00:38:45,220 --> 00:38:49,720 بنابراین تمام این مدت چه بود "سلام" است در واقع "سلام" با یک / 0، و 800 00:38:49,720 --> 00:38:53,580 در عین حال، بسیار وجود دارد ممکن است به خوبی حافظه بسیار کمی بیشتر 801 00:38:53,580 --> 00:38:56,400 در داخل کامپیوتر است. 802 00:38:56,400 --> 00:38:57,810 >> اجازه دهید من می توانم یک چیز دیگر در حال حاضر. 803 00:38:57,810 --> 00:39:01,800 به نظر می رسد که همه این مربع ما رسم شده است، آنها هستند، بله، 804 00:39:01,800 --> 00:39:06,140 رشته ها، اما به طور کلی، این چیزها آرایه هستند. 805 00:39:06,140 --> 00:39:10,590 آرایه است فقط یک تکه از حافظه که پشت به پشت به پشت به پشت، 806 00:39:10,590 --> 00:39:15,130 و شما به طور معمول استفاده از یک آرایه از طریق این نماد براکت مربع. 807 00:39:15,130 --> 00:39:18,210 بنابراین ما قصد داریم برای دیدن این کاملا یک بیت در طول زمان، اما به من اجازه رفتن به جلو و 808 00:39:18,210 --> 00:39:21,160 باز کردن، اجازه دهید آن را سنین می نامند. 809 00:39:21,160 --> 00:39:23,920 و متوجه آنچه که ما می توانیم با انجام این ترفند همان، کمی 810 00:39:23,920 --> 00:39:25,750 نحو کمی بیشتر در اینجا. 811 00:39:25,750 --> 00:39:29,270 >> بنابراین در خط 17 از این برنامه - در واقع، اجازه دهید من این برنامه برای اولین بار اجرا 812 00:39:29,270 --> 00:39:30,770 بنابراین ما می توانیم ببینیم که چه چیزی این چیزی که انجام می دهد. 813 00:39:30,770 --> 00:39:33,530 اجازه دهید من تماس بگیرید سنین را به تدوین این برنامه است. 814 00:39:33,530 --> 00:39:34,950 / سنین. 815 00:39:34,950 --> 00:39:36,480 چگونه بسیاری از مردم در اتاق هستند؟ 816 00:39:36,480 --> 00:39:38,020 سه. 817 00:39:38,020 --> 00:39:39,575 سن اولین کسی؟ 818 00:39:39,575 --> 00:39:42,710 18، 19، و 20. 819 00:39:42,710 --> 00:39:46,770 و در حال حاضر تا حدودی مسخره، من فقط ساخته شده است برنامه ای است که سنین آن 820 00:39:46,770 --> 00:39:47,740 سه نفر. 821 00:39:47,740 --> 00:39:50,390 >> بنابراین به وضوح فرصت وجود دارد برای برخی از حساب های سرگرم کننده در اینجا. 822 00:39:50,390 --> 00:39:51,560 خوشبختانه، ریاضی درست است. 823 00:39:51,560 --> 00:39:54,720 18 تا 19 رفت، 19 رفت تا 20 و غیره. 824 00:39:54,720 --> 00:39:58,510 اما آنچه واقعا به معنای به گویا در اینجا این است که چگونه ما در حال ذخیره سازی 825 00:39:58,510 --> 00:40:00,190 سن آن سه نفر را. 826 00:40:00,190 --> 00:40:02,370 اجازه بدهید من زوم در چه در اینجا. 827 00:40:02,370 --> 00:40:06,240 >> بنابراین برای اولین بار، این چند خط اول باید گرفتن بسیار آشنا است. 828 00:40:06,240 --> 00:40:08,770 من فقط باعث کاربر برای تعدادی از افراد در اتاق. 829 00:40:08,770 --> 00:40:11,490 سپس من با استفاده از دریافت int و کار را در حالی که به این کار را دوباره و دوباره و دوباره. 830 00:40:11,490 --> 00:40:15,780 ما که الگوی دیده ام قبل، اما خط 27 است و در واقع کاملا 831 00:40:15,780 --> 00:40:18,160 مفید است، و تبدیل خواهد شد به طور فزاینده ای مفید است. 832 00:40:18,160 --> 00:40:21,620 توجه داشته باشید که آنچه در خط 27 متفاوت این است که من به نظر می رسد اعلام 833 00:40:21,620 --> 00:40:23,960 اعضای هیات به نام سن، اما صبر کنید. 834 00:40:23,960 --> 00:40:27,140 این فقط سنین اعضای هیات نیست. 835 00:40:27,140 --> 00:40:30,130 این براکت مربع وجود دارد، که در داخل آن n است. 836 00:40:30,130 --> 00:40:35,150 >> بنابراین براکت نفر در این زمینه، نه داخل یک دستور printf در اینجا اما 837 00:40:35,150 --> 00:40:44,370 در این خط تنها 27، این خط است گفت: من نفر نوع داده int را، که هر کدام 838 00:40:44,370 --> 00:40:46,080 از نوع int است. 839 00:40:46,080 --> 00:40:49,870 بنابراین این یک سطل است، پس به صحبت می کنند،، در این مورد، سه عدد صحیح به 840 00:40:49,870 --> 00:40:52,770 پشت به پشت به طوری که من به طور موثر دارای سه متغیر. 841 00:40:52,770 --> 00:40:54,890 جایگزین، به روشن است، این می شود. 842 00:40:54,890 --> 00:40:57,400 >> اگر من می خواستم برای اولین بار دانش آموز سن، من ممکن است این کار را انجام دهند. 843 00:40:57,400 --> 00:40:59,520 اگر من می خواستم دانش آموز دوم سن من ممکن است این کار را انجام دهند. 844 00:40:59,520 --> 00:41:01,860 اگر من می خواستم دانش آموز سوم سن، من ممکن است این کار را انجام دهند. 845 00:41:01,860 --> 00:41:04,320 و خدای ناکرده ما نیاز به همه سن در این اتاق - 846 00:41:04,320 --> 00:41:07,670 منظورم این است که، این هک از بسیاری از کپی است، دوباره و دوباره و دوباره بچسبانید. 847 00:41:07,670 --> 00:41:10,870 و به علاوه زمانی که من این برنامه را کامپایل، اگر یک دانشجوی دیگر پیاده روی در بیش از 848 00:41:10,870 --> 00:41:14,200 از این درب، در حال حاضر تعداد من از متغیرها نادرست است. 849 00:41:14,200 --> 00:41:17,450 >> پس چه خوب است در مورد یک آرایه است که به عنوان به محض این که شما شروع به احساس خود را 850 00:41:17,450 --> 00:41:20,190 کپی کردن و چسباندن، شانس هستند که بهترین روش نیست. 851 00:41:20,190 --> 00:41:22,240 آرایه به طور بالقوه پویا است. 852 00:41:22,240 --> 00:41:24,610 من در پیش چگونه بسیاری از مردم می دانم می رویم به در اتاق، 853 00:41:24,610 --> 00:41:28,670 اما من نمی دانم من باید نفر از آنها، و من کشف کردن N هنگامی که زمان می آید. 854 00:41:28,670 --> 00:41:35,500 این خط از کد در حال حاضر به معنای، به من بدهد تکه از حافظه است که به نظر می رسد مثل این 855 00:41:35,500 --> 00:41:40,380 که در آن تعدادی از جعبه ها بر روی صفحه نمایش به طور کامل وابسته به N است که 856 00:41:40,380 --> 00:41:42,010 کاربر تایپ شوید. 857 00:41:42,010 --> 00:41:44,850 >> بنابراین در حال حاضر دیگر این برنامه است در واقع بسیار شبیه به آنچه که ما 858 00:41:44,850 --> 00:41:46,860 فقط با شخصیت. 859 00:41:46,860 --> 00:41:49,970 توجه داشته باشید من یک حلقه for شروع در خط 30. 860 00:41:49,970 --> 00:41:54,920 بنابراین بلافاصله پس از دریافت آرایه، من تکرار از Y برابر با صفر تا n. 861 00:41:54,920 --> 00:41:58,890 من فقط باید این چون printf آموزنده پیام به فقط گفت، من سن 862 00:41:58,890 --> 00:42:03,690 فرد #٪ من، به طوری که شماره یک، شماره دو، شماره سه. 863 00:42:03,690 --> 00:42:04,730 و چرا من این کار را کردند؟ 864 00:42:04,730 --> 00:42:08,870 رک و پوست کنده، انسان ها ترجیح می دهند به دفعات مشاهده شده از یک در بالا در حالی که دانشمندان علوم کامپیوتر، 865 00:42:08,870 --> 00:42:09,620 صفر تا. 866 00:42:09,620 --> 00:42:11,700 دانشمندان کامپیوتر در حال رفتن به استفاده از این نوع برنامه، بنابراین ما 867 00:42:11,700 --> 00:42:13,990 رفتن به شروع به شمارش در یکی مانند مردم عادی. 868 00:42:13,990 --> 00:42:17,630 >> و در حال حاضر در خط 33، توجه کمی قطعه مختلف نحو. 869 00:42:17,630 --> 00:42:23,710 سن i ام در آن متغیر از نوع آرایه رفتن به گرفتن بین المللی. 870 00:42:23,710 --> 00:42:25,770 و در حال حاضر در نهایت، این فقط حساب کردن در اینجا. 871 00:42:25,770 --> 00:42:29,200 من در یک حلقه جداگانه به ادعای تصمیم برخی از زمان می گذرد، و در حال حاضر در این 872 00:42:29,200 --> 00:42:31,400 حلقه مجزا، این خطوط را اجرا کند. 873 00:42:31,400 --> 00:42:35,810 >> یک سال از هم اکنون، شخص من خواهد بود من ساله، اما متوجه این است که 874 00:42:35,810 --> 00:42:36,500 متغیر من. 875 00:42:36,500 --> 00:42:38,390 این در حال حاضر من اعضای هیات درصد. 876 00:42:38,390 --> 00:42:43,210 و توجه به عنوان اولین مکان نگه دار، من پلاگین در من به علاوه 1 است، بنابراین ما به حساب 877 00:42:43,210 --> 00:42:44,250 فرد طبیعی است. 878 00:42:44,250 --> 00:42:49,190 و سپس برای ارزش از سن خود، برای من ساله، من را سنین براکت 879 00:42:49,190 --> 00:42:52,980 - و به همین دلیل من به علاوه یک در اینجا انجام می دهند؟ 880 00:42:52,980 --> 00:42:53,760 آنها فقط در سن. 881 00:42:53,760 --> 00:42:55,030 این انتخاب احمقانه من از برنامه. 882 00:42:55,030 --> 00:42:56,810 آنها فقط در سن یک سال. 883 00:42:56,810 --> 00:42:59,770 من می توانم در هر تعداد که نوع من در واقع می خواهم وجود دارد. 884 00:42:59,770 --> 00:43:02,430 >> بنابراین آنچه در واقع تمام ارتباط در اینجا؟ 885 00:43:02,430 --> 00:43:07,610 خوب، اجازه دهید من در واقع حرکت به عقب بیش از اینجا و رنگ یک تصویر 886 00:43:07,610 --> 00:43:10,830 از آنچه در پیش روست. 887 00:43:10,830 --> 00:43:15,720 آنچه ما می خواهیم با بعدی ما انجام می دهند مشکل تنظیم دو dabbling در 888 00:43:15,720 --> 00:43:17,070 جهان از رمزنگاری. 889 00:43:17,070 --> 00:43:22,500 بنابراین این رشته از کاراکتر ها است، بنابراین دنباله ای از کاراکتر های مختلف، و آنچه 890 00:43:22,500 --> 00:43:23,750 آیا این می گویند؟ 891 00:43:23,750 --> 00:43:28,530 892 00:43:28,530 --> 00:43:30,600 آن را در نسخه آنلاین لام. 893 00:43:30,600 --> 00:43:35,880 >> بنابراین من ادعا می کنند که این برابر این، تبلیغات احمق از سالها 894 00:43:35,880 --> 00:43:39,950 پیش است که در واقع ممکن است به یاد یکی از ریشه های خود را. 895 00:43:39,950 --> 00:43:42,740 بنابراین این یک مثال از رمزنگاری است یا رمزنگاری. 896 00:43:42,740 --> 00:43:46,150 معلوم است که اگر شما می خواهید در واقع ارسال اطلاعات و یا به اشتراک گذاری 897 00:43:46,150 --> 00:43:49,310 اطلاعات امن با کسی، مانند یک پیام شبیه به این، شما می توانید 898 00:43:49,310 --> 00:43:50,500 تقلا حروف. 899 00:43:50,500 --> 00:43:53,170 اما به طور معمول، کلمات درهم به طور تصادفی. 900 00:43:53,170 --> 00:43:56,365 آنها در برخی از راه permuted شده و یا تغییر در برخی از راه به طوری که - اوه. 901 00:43:56,365 --> 00:43:59,040 این یک اسپویلر سرگرم کننده برای زمان بعدی است. 902 00:43:59,040 --> 00:44:04,390 >> بنابراین شما می توانید نقشه آنچه که ظاهرا ای به B. توجه است که خطوط 903 00:44:04,390 --> 00:44:05,420 نوشتن با حروف بزرگ و حکیم است. 904 00:44:05,420 --> 00:44:07,960 ظاهرا تحقیق الکترونیکی می شود. 905 00:44:07,960 --> 00:44:14,000 ظاهرا F-H-E-R S-U-R-E می شود. پس آن را تبدیل از یک نقشه برداری وجود دارد، و در 906 00:44:14,000 --> 00:44:18,720 این مورد خیلی احمق وجود دارد نقشه برداری اگر کسی آن را نمیفهمد؟ 907 00:44:18,720 --> 00:44:21,440 این چیزی به نام پوسیدگی 13، چرخش 13. 908 00:44:21,440 --> 00:44:24,760 این احمقانه رمزگذاری است مکانیسم به دلیل آن را به معنای واقعی کلمه فقط 909 00:44:24,760 --> 00:44:29,160 می افزاید: 13 به هر یک از حروف، احمقانه است، به این معنا که اگر شما فقط 910 00:44:29,160 --> 00:44:31,890 کمی از وقت آزاد در دست شما و یک مداد، و یا شما فقط به آن فکر می کنم 911 00:44:31,890 --> 00:44:35,260 از در سر خود را، شما می توانید سعی کنید همه شده ممکن است - یک، دو، 912 00:44:35,260 --> 00:44:38,470 سه، نقطه، نقطه، نقطه، 25 به فقط چرخش تمام حروف الفبا، و 913 00:44:38,470 --> 00:44:40,860 در نهایت، شما کشف کردن این پیام چیست. 914 00:44:40,860 --> 00:44:43,700 بنابراین اگر شما چیزی شبیه به این در مدرسه ابتدائی عبور پیام خود را به 915 00:44:43,700 --> 00:44:46,830 بهترین دوست، اگر مدرسه ابتدائی خود را معلم به سادگی از طریق خواندن 916 00:44:46,830 --> 00:44:50,320 پیام و حیوان را مجبور به راه حل، شما ممکن است بعد فورا رفت واز 917 00:44:50,320 --> 00:44:52,550 یک پاسخ توسط آن. 918 00:44:52,550 --> 00:44:54,970 >> در حال حاضر البته، در دنیای واقعی، رمزنگاری پیچیده تر است. 919 00:44:54,970 --> 00:45:00,120 این یک قطعه از متن از سیستم کامپیوتری است که دارای نام کاربری و 920 00:45:00,120 --> 00:45:03,630 رمز عبور، به عنوان تقریبا همه ماست، و این است رمز عبور خود را چه چیزی ممکن است 921 00:45:03,630 --> 00:45:07,260 نگاه دوست اگر در هارد خود ذخیره می شود درایو، اما به صورت رمز شده. 922 00:45:07,260 --> 00:45:11,050 این فقط یک چرخش حروف، B و B، C. این است 923 00:45:11,050 --> 00:45:15,620 بسیار پیچیده تر است، اما از آن استفاده می کند آنچه به طور کلی به عنوان کلید محرمانه شناخته شده است 924 00:45:15,620 --> 00:45:16,690 رمزنگاری. 925 00:45:16,690 --> 00:45:20,210 این تصویر شرح زیر می گوید داستان با چند آیکون. 926 00:45:20,210 --> 00:45:22,250 >> در سمت چپ، ما باید چیزی را خواهیم متن ساده تماس بگیرید. 927 00:45:22,250 --> 00:45:25,420 در جهان از رمزنگاری، دشت متن پیام اصلی است 928 00:45:25,420 --> 00:45:29,050 نوشته شده در زبان انگلیسی یا فرانسه و یا هر زبان به آنچه. 929 00:45:29,050 --> 00:45:32,405 اگر شما می خواهید آن را به رمز در آوردن، ما را عبور pictorially از طریق یک قفل، بنابراین 930 00:45:32,405 --> 00:45:35,580 نوعی از الگوریتم، برخی از تابع یا برنامه ای است که کسی نوشت 931 00:45:35,580 --> 00:45:39,880 که تصدیق نامه ها امیدوارم complicatedly تر از فقط اضافه کردن 13 932 00:45:39,880 --> 00:45:40,980 به هر یک از آنها. 933 00:45:40,980 --> 00:45:43,780 >> چه شما از این فرآیند در وسط وجود دارد به نام cyphertext. 934 00:45:43,780 --> 00:45:44,850 بنابراین نوع یک کلمه سکسی. 935 00:45:44,850 --> 00:45:47,630 این فقط به معنی آن رمزگذاری شده است نسخه ای از متن ساده. 936 00:45:47,630 --> 00:45:52,570 و تنها اگر شما همان راز، 13 یا منهای 13، شما قادر به 937 00:45:52,570 --> 00:45:54,970 پیام رمزگشایی مانند آن. 938 00:45:54,970 --> 00:45:57,770 >> بنابراین در مجموعه مسئله دو، در میان چیزهای شما اگر در هکر انجام دهد 939 00:45:57,770 --> 00:46:01,860 نسخه، شما باید به نوشتن کد برای کرک این کلمه عبور، بدانند 940 00:46:01,860 --> 00:46:05,170 آنها چه بودند و چگونه آنها رمزگذاری شده، هر چند ما شما را کمی به من بدهید 941 00:46:05,170 --> 00:46:06,460 هدایت در طول مسیر. 942 00:46:06,460 --> 00:46:09,320 در نسخه استاندارد، معرفی می کنیم یک زن و شوهر از رمز، رمزگذاری 943 00:46:09,320 --> 00:46:12,400 مکانیزم، یکی به نام سزار، یکی Vigenere نامیده می شود، که هنوز 944 00:46:12,400 --> 00:46:16,100 رمز چرخشی که در آن می شود چیزی، B چیزی می شود، اما 945 00:46:16,100 --> 00:46:18,820 شما باید آن را انجام برنامه نویسی در واقع به دلیل وجود خواهد داشت یک راز 946 00:46:18,820 --> 00:46:22,840 کلیدی درگیر است که به طور معمول یک عدد و یا یک کلمه کلیدی است که تنها 947 00:46:22,840 --> 00:46:26,420 فرستنده و گیرنده از این پیام باید درک کنند. 948 00:46:26,420 --> 00:46:28,660 >> در حال حاضر، این در واقع تا برداشت در جهان واقعی است. 949 00:46:28,660 --> 00:46:32,910 این، برای مثال، یتیم کمی است حلقه رسیور مخفی آنی است، و شما 950 00:46:32,910 --> 00:46:35,180 در واقع می توانید از این اجرا رمز چرخشی - 951 00:46:35,180 --> 00:46:37,930 چیزی است که می شود، B می شود چیزی - با یک زن و شوهر از چرخ، 952 00:46:37,930 --> 00:46:40,840 یکی در خارج، یکی در داخل به طوری که اگر شما چرخ چرخش و یا 953 00:46:40,840 --> 00:46:44,170 حلقه، شما در واقع می توانید خط تا حروف با حروف مختلف، 954 00:46:44,170 --> 00:46:45,430 گرفتن کد های مخفی. 955 00:46:45,430 --> 00:46:48,110 و بنابراین به عنوان مطلب یا داستان جالب امروز، آنچه من فکر کردم من می خواهم انجام دهید این است که کمی از 956 00:46:48,110 --> 00:46:52,170 بازگشتی که اگر شما بر روی تلویزیون تبدیل می شوند در دسامبر 24، شما می توانید تماشا کنید 957 00:46:52,170 --> 00:46:55,390 فیلم آگهی nauseum برای 24 ساعت در یک ردیف. 958 00:46:55,390 --> 00:47:06,030 اما امروز، من آن را در اینجا باز و ما فقط دو دقیقه را 959 00:47:06,030 --> 00:47:13,493 داستان کریسمس آموزشی مرتبط با شخص کوچک به نام Ralphie. 960 00:47:13,493 --> 00:47:14,400 >> [پخش ویدئو] 961 00:47:14,400 --> 00:47:17,420 >> می شود آن را به هر کسی که شناخته شده است رالف پارکر بدینوسیله منصوب 962 00:47:17,420 --> 00:47:20,650 عضو از یتیم کوچولو آنی مخفی دایره است و برای همه تحت عنوان 963 00:47:20,650 --> 00:47:23,460 افتخارات و مزایای اتفاق می افتد به آنها نمیدهد. 964 00:47:23,460 --> 00:47:25,990 >> امضا شده، یتیم کوچولو آنی. 965 00:47:25,990 --> 00:47:30,100 در جوهر Countersigned است، پیر آندره. 966 00:47:30,100 --> 00:47:34,270 افتخارات و مزایای در حال حاضر در سن نه سالگی. 967 00:47:34,270 --> 00:47:39,440 >> [فریاد در رادیو و تلویزیون] 968 00:47:39,440 --> 00:47:40,770 >> بیا، اجازه دهید با آن دریافت کنید. 969 00:47:40,770 --> 00:47:44,965 من تمام است که موسیقی جاز مورد نیاز نیست قاچاقچیان و دزدان دریایی. 970 00:47:44,965 --> 00:47:48,270 >> گوش دادن فردا شب نتیجه گیری ماجراجویی سیاه و سفید 971 00:47:48,270 --> 00:47:49,650 کشتی دزدان دریایی. 972 00:47:49,650 --> 00:47:53,320 در حال حاضر، این زمان برای راز آنی پیام برای شما اعضای 973 00:47:53,320 --> 00:47:55,720 دایره مخفی. 974 00:47:55,720 --> 00:47:56,580 به یاد داشته باشید، بچه ها. 975 00:47:56,580 --> 00:48:01,720 فقط اعضای دایره راز آنی می تواند پیام مخفی آنی را رمزگشایی می کند. 976 00:48:01,720 --> 00:48:05,872 به یاد داشته باشید، آنی است که بسته به شما. 977 00:48:05,872 --> 00:48:08,670 تنظیم پین خود را به B2. 978 00:48:08,670 --> 00:48:11,000 در اینجا این پیام است. 979 00:48:11,000 --> 00:48:12,335 12، 11، 2 - 980 00:48:12,335 --> 00:48:14,670 >> من در اولین جلسه راز من هستم. 981 00:48:14,670 --> 00:48:19,720 >> -25، 14، 11، 18، 16 - 982 00:48:19,720 --> 00:48:21,650 >> پیر در امشب صدای بزرگ بود. 983 00:48:21,650 --> 00:48:24,830 من می توانم پیام که امشب بگویید مهم بود واقعا. 984 00:48:24,830 --> 00:48:26,400 >> -3، 25. 985 00:48:26,400 --> 00:48:28,540 این یک پیام از آنی خود است. 986 00:48:28,540 --> 00:48:30,086 به یاد داشته باشید، به کسی نگو. 987 00:48:30,086 --> 00:48:34,370 988 00:48:34,370 --> 00:48:38,710 >> -90 ثانیه بعد، من در اتاق تنها هستم در خانه که در آن یک پسر نه 989 00:48:38,710 --> 00:48:42,668 می تواند در حفظ حریم خصوصی و رمزگشایی نشسته اند. 990 00:48:42,668 --> 00:48:47,628 AHA، B. من به بعد رفت. 991 00:48:47,628 --> 00:48:53,060 E. اولین کلمه "باشد." S. این شد که آسان تر است. 992 00:48:53,060 --> 00:48:54,980 U. 25. 993 00:48:54,980 --> 00:48:55,940 R. 994 00:48:55,940 --> 00:48:56,900 >> بیا، Ralphie. 995 00:48:56,900 --> 00:48:57,860 من باید برم. 996 00:48:57,860 --> 00:48:59,780 >> I'll سمت راست پایین، کارشناسی ارشد. 997 00:48:59,780 --> 00:49:01,030 صدای تیز و تند هی. 998 00:49:01,030 --> 00:49:04,300 999 00:49:04,300 --> 00:49:08,220 >> -T. O. مطمئن شوید. 1000 00:49:08,220 --> 00:49:09,500 مطمئن باشید که به چه چیز؟ 1001 00:49:09,500 --> 00:49:11,660 یتیم کوچولو چه بود آنی در تلاش برای گفتن؟ 1002 00:49:11,660 --> 00:49:12,844 مطمئن باشید که به چه چیز؟ 1003 00:49:12,844 --> 00:49:14,732 >> Ralphie، رندی کردم تا به آن بروید. 1004 00:49:14,732 --> 00:49:16,148 آیا شما لطفا بیرون می آید؟ 1005 00:49:16,148 --> 00:49:17,092 >> همه حق، کارشناسی ارشد. 1006 00:49:17,092 --> 00:49:18,510 من خواهم بود از سمت راست. 1007 00:49:18,510 --> 00:49:20,270 >> -I بود و نزدیک به حال. 1008 00:49:20,270 --> 00:49:21,823 تنش وحشتناک بود. 1009 00:49:21,823 --> 00:49:23,045 آن چه بود؟ 1010 00:49:23,045 --> 00:49:26,510 سرنوشت این سیاره ممکن است آویزان در تعادل. 1011 00:49:26,510 --> 00:49:28,985 >> Ralphie، بروید باید رندی. 1012 00:49:28,985 --> 00:49:32,680 >> I'll از سمت راست برای گریه کردن با صدای بلند. 1013 00:49:32,680 --> 00:49:33,956 >> تقریبا وجود دارد. 1014 00:49:33,956 --> 00:49:35,140 انگشتان من پرواز کرد. 1015 00:49:35,140 --> 00:49:36,880 ذهن من یک تله فولاد بود. 1016 00:49:36,880 --> 00:49:38,010 هر منفذ ارتعاش. 1017 00:49:38,010 --> 00:49:39,878 این تقریبا روشن بود. 1018 00:49:39,878 --> 00:49:43,210 بله، بله، بله، بله، بله. 1019 00:49:43,210 --> 00:49:49,030 >> مطمئن باشید به نوشیدن Ovaltine شما. 1020 00:49:49,030 --> 00:49:50,280 Ovaltine؟ 1021 00:49:50,280 --> 00:49:53,980 1022 00:49:53,980 --> 00:49:55,230 یک تجاری اکبیر؟ 1023 00:49:55,230 --> 00:49:58,572 1024 00:49:58,572 --> 00:50:00,694 پسر عوضی. 1025 00:50:00,694 --> 00:50:01,900 >> [END پخش ویدئو] 1026 00:50:01,900 --> 00:50:04,260 >> SPEAKER 1: این CS50 است، و خواهد بود تنظیم مشکل دو. 1027 00:50:04,260 --> 00:50:06,305 هفته آینده شما را می بینم. 1028 00:50:06,305 --> 00:50:08,800 >> SPEAKER 2: در آینده CS50، این اتفاق می افتد. 1029 00:50:08,800 --> 00:50:11,060 >> SPEAKER 1: به همین دلیل یک موضوع ما ندارد نگاه تا کنون 1030 00:50:11,060 --> 00:50:12,220 که از اشاره گر تابع. 1031 00:50:12,220 --> 00:50:14,540 در حال حاضر، یک اشاره گر تابع فقط آدرس های عمومی 1032 00:50:14,540 --> 00:50:17,000 تابع، اما بسیار شبیه - 1033 00:50:17,000 --> 00:50:18,250 پسر - 1034 00:50:18,250 --> 00:50:19,670