1 00:00:00,000 --> 00:00:07,810 2 00:00:07,810 --> 00:00:09,840 >> JASON HIRSCHHORN: خوش آمدید، ہفتہ 6 پر سب،. 3 00:00:09,840 --> 00:00:14,790 مجھے اچھی طرح سے زندہ تم سب کو دیکھ کر بہت خوش ہوں اور کوئز 0 کے بعد، کیونکہ میں نے معلوم ہے کہ 4 00:00:14,790 --> 00:00:15,810 تھوڑا سا کسی نہ کسی طرح تھا. 5 00:00:15,810 --> 00:00:18,370 لیکن شکر ہے، آپ سب کو ناقابل یقین حد تک اچھی طرح سے کیا. 6 00:00:18,370 --> 00:00:21,680 اور تو ہے کہ بہت اچھا ہے. 7 00:00:21,680 --> 00:00:25,840 آپ میرے حصے میں ہیں، میں سب سے زیادہ دیا ہے آپ کے پہلے سے ہی آپ quizzes کی حمایت. 8 00:00:25,840 --> 00:00:28,050 >> آپ کی ایک جوڑے، میں مل رہا ہوں کلاس کے بعد. 9 00:00:28,050 --> 00:00:32,360 اور آپ کو ایک توسیع طالب علم اور ہیں آپ کو واپس آپ کوئز موصول نہیں ہوا ہے 10 00:00:32,360 --> 00:00:35,490 ابھی تک، آپ TF شاید اس پر کام کر رہا ہے اور یہ گریڈنگ، اور اسے واپس مل جائے گا 11 00:00:35,490 --> 00:00:36,490 آپ کو جلد ہی. 12 00:00:36,490 --> 00:00:39,650 ہیں تو میری توسیع کے طالب علموں کو اب دیکھ - امید ہے کہ رہتے ہیں - 13 00:00:39,650 --> 00:00:42,880 میں نے آپ کے سوال جواب مل جائے گا جلد ہی اس کے ساتھ ساتھ. 14 00:00:42,880 --> 00:00:45,670 >> مندرجہ ذیل کے طور پر آج کے لئے ہمارے ایجنڈا ہے. 15 00:00:45,670 --> 00:00:50,170 سب سے پہلے، ہم نے کچھ پر جانے کے لئے جا رہے ہیں CS50 آپ کے لئے فراہم کرتا ہے وسائل. 16 00:00:50,170 --> 00:00:54,590 ہم اگلے کوئز 0 پر جانے کے لئے جا رہے ہیں، اور میں کسی بھی سوال کا کسی کو جواب دیں گے 17 00:00:54,590 --> 00:00:57,360 خاص طور پر مسائل کے بارے میں ہے. 18 00:00:57,360 --> 00:01:02,050 اور پھر، ہم جا رہے ہیں فائل میں / O اور مسئلہ سیٹ 5. 19 00:01:02,050 --> 00:01:07,360 ان لوگوں کو آخری دو عنوانات کے لے جائے گا سیکشن کا بڑا حصہ آج. 20 00:01:07,360 --> 00:01:11,680 >> میں ایک کے طور پر ہر ہفتے اس فہرست میں ڈال دیا آپ سب کو، لیکن کور کے یاد دہانی 21 00:01:11,680 --> 00:01:14,650 سیکشن، ہم صرف 90 منٹ ہے - ہم نے سب کچھ کا احاطہ کرنے کے قابل نہیں ہیں کہ میں 22 00:01:14,650 --> 00:01:16,280 لوگ آپ کے لئے پورا کرنے کے لئے محبت کرے گا. 23 00:01:16,280 --> 00:01:21,170 لیکن ہم نے کے لئے وسائل کی ایک ٹن ہے آپ کو معلوم کرنے کے لئے حاصل کے طور پر آپ صلی اللہ علیہ وسلم اپنی طرف متوجہ کرنے 24 00:01:21,170 --> 00:01:24,000 کے ذریعے مواد اور کام آپ کا مسئلہ سیٹ. 25 00:01:24,000 --> 00:01:30,810 >> میں آن لائن کو ایک متن ہے کہ ایک یاد دہانی اگر آپ کو بھرنے کے لئے آپ کے لئے قائم باکس، 26 00:01:30,810 --> 00:01:33,250 میرے لئے کسی بھی رائے ہے، مثبت اور دونوں 27 00:01:33,250 --> 00:01:35,180 سیکشن کے بارے میں، تعمیری. 28 00:01:35,180 --> 00:01:38,600 اس یو آر ایل کا حق نیچے یہاں واقع ہے. 29 00:01:38,600 --> 00:01:43,250 آپ کو کسی بھی ہیں تو ایک لمحے کے لئے، براہ مہربانی رائے، چاہے سیکشن کے دوران، 30 00:01:43,250 --> 00:01:48,030 یا اس کے بعد، یا اس کے بعد آپ کو ویڈیو دیکھنے کے آن لائن، مجھے آپ کی رائے دینے کے لئے. 31 00:01:48,030 --> 00:01:52,100 میں واقعی میں اس کے کسی بھی اور تمام تعریف. 32 00:01:52,100 --> 00:01:55,730 >> تو میں نے چھوٹی بات چیت کر رہے ہیں میری ایک بہت کے ساتھ 33 00:01:55,730 --> 00:01:59,350 ہفتے بھر میں طالب علموں کو - میں نے ہاتھ کے طور پر واپس quizzes ہے، کے بارے میں بات 34 00:01:59,350 --> 00:02:01,480 جی ہاں، آپ کر رہے ہیں کس طرح دیکھ کر. 35 00:02:01,480 --> 00:02:05,120 اور ایک موضوع پر آئے اور ہے پر کے بارے میں بات میں - میں 36 00:02:05,120 --> 00:02:05,660 خاص طور پر - 37 00:02:05,660 --> 00:02:07,710 مسئلہ سیٹ. 38 00:02:07,710 --> 00:02:13,090 اور میں اس موضوع محفوظ ہیں اب بورڈ پر. 39 00:02:13,090 --> 00:02:16,630 >> بنیادی طور پر، فرق ہے ہے کہ کچھ میں تبدیل کے درمیان 40 00:02:16,630 --> 00:02:19,590 درست طریقے سے اور کچھ کیا کہ اچھی طرح سے کیا جاتا ہے. 41 00:02:19,590 --> 00:02:22,920 زیادہ تر لوگوں کو بہت اچھا کر رہے ہیں درست کی شرائط میں - 42 00:02:22,920 --> 00:02:25,460 تمام psets میں 5 یا 4 کے. 43 00:02:25,460 --> 00:02:27,930 زیادہ تر لوگوں کو ہو رہے ہیں ان کے وقت کی تمام. 44 00:02:27,930 --> 00:02:31,150 >> تاہم، صرف اس وجہ سے آپ نے کیا کیا ہے کچھ صحیح آپ نے مطلب یہ نہیں ہے 45 00:02:31,150 --> 00:02:34,450 کے طور پر سروچپورن کچھ کیا، یا مؤثر طریقے سے، یا سفائیپسند آپ کے طور پر 46 00:02:34,450 --> 00:02:35,270 یہ کیا ہے ہو سکتا ہے. 47 00:02:35,270 --> 00:02:36,790 اور یہ کہ کیا ڈیزائن ہے - 48 00:02:36,790 --> 00:02:39,230 اور ایک کم کی ڈگری، سٹائل - 49 00:02:39,230 --> 00:02:40,450 کلہاڑی کے لئے ہیں. 50 00:02:40,450 --> 00:02:45,130 تو میں آپ سب کو دھکا، اور دوسرے کی TFs ہوں نہ صرف باری، تم لوگ کر رہے ہیں 51 00:02:45,130 --> 00:02:48,320 درست ہیں، لیکن باری ہے کہ چیزوں میں اچھی طرح کوڈت ہیں کہ چیزوں میں. 52 00:02:48,320 --> 00:02:53,060 >> loops کے لئے غیر ضروری نہیں کر رہے، متغیر اگر recalculating نہیں 53 00:02:53,060 --> 00:02:53,800 آپ کی ضرورت نہیں ہے. 54 00:02:53,800 --> 00:02:58,520 مثال کے طور پر، مقرر واپس مسئلہ کرنے کے لئے تلاش 4، پر اینٹوں رکھنے جب 55 00:02:58,520 --> 00:03:03,070 سکرین، ہر صف ہے - ایک میں ہر اینٹ دی قطار اسی Y-تعاون ہے - 56 00:03:03,070 --> 00:03:04,390 اسی اونچائی محدد. 57 00:03:04,390 --> 00:03:07,930 >> Y-سمنوی کی ضرورت نہیں کیا تھا کہ وزارت داخلہ کے اندر کا حساب کیا جائے 58 00:03:07,930 --> 00:03:11,070 آپ کا امکان استعمال کیا جاتا ہے لوپ کے لئے اندر در اندر سکرین پر ان اینٹوں ڈال. 59 00:03:11,070 --> 00:03:14,030 یہ صرف ہر حساب کرنے کی ضرورت ہے وقت آپ کو ایک قطار میں تبدیل کر دیا، یا 60 00:03:14,030 --> 00:03:15,200 ایک صف نیچے منتقل کر دیا گیا. 61 00:03:15,200 --> 00:03:19,760 10 اینٹوں کی ایک میں ہیں تو کہتے ہیں کہ صف، ہر اینٹ پر ایک ہی ہو سکتا ہے 62 00:03:19,760 --> 00:03:22,260 Y-سمنوی، اور Y-محدد ہے صرف حساب کیا جا سکتا 63 00:03:22,260 --> 00:03:23,550 ان میں سے سب کے لئے ایک بار. 64 00:03:23,550 --> 00:03:27,810 >> یہ 10 کا حساب کرنے کی ضرورت نہیں ہے بار، اور نہ ہی کرتا ہے حساب کتاب کی ضرورت 65 00:03:27,810 --> 00:03:30,220 اصل میں ہو تقریب کال کریں - 66 00:03:30,220 --> 00:03:33,020 نئے gracked تقریب کال. 67 00:03:33,020 --> 00:03:37,820 تو اس کے لئے ایک چھوٹا سا مبہم تھا آپ کو زیادہ generically، چیزوں کو کہ 68 00:03:37,820 --> 00:03:40,730 ہر ایک وقت ایسا کرنے کی ضرورت نہیں ہے آپ کو نہیں ہونا چاہئے کے لئے لوپ کے ذریعے جاؤ 69 00:03:40,730 --> 00:03:42,900 کے لئے لوپ کے اندر ڈال دیا، اور نہیں کرنا چاہئے تم جاؤ ہر وقت ہو 70 00:03:42,900 --> 00:03:44,080 کے لئے لوپ کے ذریعے. 71 00:03:44,080 --> 00:03:49,270 >> ہم نے دیکھا ایک اور اچھی ڈیزائن مثال کے طور پر 15 ہفتہ 3 میں، آپ کو رکھ سکتا 72 00:03:49,270 --> 00:03:50,500 صفر کا ٹریک. 73 00:03:50,500 --> 00:03:53,600 تو آپ کو، آپ کو بورڈ ابتدا جب کو بچانے کے - ایک عالمی متغیر میں، شاید - 74 00:03:53,600 --> 00:03:56,140 X اور صفر کی Y-سمنوی. 75 00:03:56,140 --> 00:03:57,520 اور پھر جب بھی آپ - 76 00:03:57,520 --> 00:04:00,310 آپ اس اقدام تقریب میں، جب بھی آپ کو ایک کامیاب اقدام، آپ کو اپ ڈیٹ 77 00:04:00,310 --> 00:04:02,040 صفر کی جگہ. 78 00:04:02,040 --> 00:04:06,240 >> ایسا کرنے کے لئے ہونے سے آپ کو بچانے کے کریں گے کے ذریعے تلاش کرنے loops کے لئے اندر در اندر 79 00:04:06,240 --> 00:04:10,700 آپ اس اقدام کی تقریب میں ہر وقت سوار اور صفر کی تلاش، یا ٹائل کو تلاش کریں، 80 00:04:10,700 --> 00:04:12,460 اور پھر اگلے اس کے لئے کیا ہے کی جانچ پڑتال. 81 00:04:12,460 --> 00:04:16,329 اس کے بجائے، آپ کی جگہ ہے صفر، آپ کو صرف، ذیل میں، اوپر دیکھ سکتے ہیں 82 00:04:16,329 --> 00:04:21,160 اور اس کے بائیں اور دائیں کرنے کے لئے، تلاش کرنے کے لئے آپ کے لئے تلاش کر رہے تھے ٹائل. 83 00:04:21,160 --> 00:04:24,970 >> تو ہم پروگرام کی شرائط میں لکھنے، وہ کافی بڑے کبھی نہیں رہے ہیں 84 00:04:24,970 --> 00:04:28,580 کہ ان ڈیزائن کے فیصلوں سے کچھ واقعی متاثر کرنے کے لئے جا رہے ہیں آپ 85 00:04:28,580 --> 00:04:31,670 پروگرام، یا، اس سے زیادہ آہستہ آہستہ چلانے کے یا شاید بھی میموری سے باہر چلانے کے. 86 00:04:31,670 --> 00:04:35,030 لیکن ہم اب بھی تم لوگ آگے بڑھانے رہے ہیں لکھنے کے لئے کے طور پر خوبصورت اور 87 00:04:35,030 --> 00:04:36,450 ممکن طور پر موثر کوڈ. 88 00:04:36,450 --> 00:04:39,910 >> لہذا اگر آپ ایسا کرتے چیزیں لکھ ختم ایک نمایاں طور پر بڑی ہے 89 00:04:39,910 --> 00:04:44,660 گنجائش، وہ اچھے کے ساتھ لکھا جائے گا درست ہونے کے علاوہ میں ڈیزائن. 90 00:04:44,660 --> 00:04:46,300 تو آپ کے پاس کی ایک بڑی تعداد کہ باہر لایا. 91 00:04:46,300 --> 00:04:48,560 یہی ہے جو ہم کے لئے تلاش کر رہے ہیں کچھ ہے - ہم جاری رکھنے کے لئے جا رہے ہیں کچھ 92 00:04:48,560 --> 00:04:49,840 آپ پر لوگوں کو دھکا. 93 00:04:49,840 --> 00:04:52,460 >> کیا تم نے کبھی کے بارے میں کوئی سوالات ہیں، تو آپ کے پروگرام کے ڈیزائن، آزاد محسوس کرتے ہیں 94 00:04:52,460 --> 00:04:56,870 مجھ سے باہر تک پہنچنے، اور میں خوش ہوں پر آپ کے ساتھ آپ کے پروگرام کے ذریعے چلنا، 95 00:04:56,870 --> 00:05:01,320 اور ڈیزائن کے کچھ باہر کی طرف اشارہ تم نے، اور آپ کو کچھ دینے کے فیصلے 96 00:05:01,320 --> 00:05:06,240 بنانے کے لئے کس طرح کی تجاویز بھی بہتر ڈیزائن کے فیصلوں. 97 00:05:06,240 --> 00:05:08,870 >> تو ہم پر منتقل کرنے کے لئے جا رہے ہیں کوئز 0 کے بارے میں بات کرنے کے لئے. 98 00:05:08,870 --> 00:05:11,300 ہم ایسا کرنے سے پہلے، کسی کو کرتا ہے کے بارے میں کوئی سوالات ہیں، کیا 99 00:05:11,300 --> 00:05:14,252 میں نے اب تک کا احاطہ کرتا ہے؟ 100 00:05:14,252 --> 00:05:21,500 >> [RUSTLING شور] 101 00:05:21,500 --> 00:05:22,750 >> JASON HIRSCHHORN: سات سیکنڈ. 102 00:05:22,750 --> 00:05:23,250 ٹھیک ہے. 103 00:05:23,250 --> 00:05:24,970 ایک تھوڑا سا کے لئے کوئز 0 کے بارے میں بات کرتے ہیں. 104 00:05:24,970 --> 00:05:26,700 آپ میں سے زیادہ تر آپ کوئز 0 واپس ہے. 105 00:05:26,700 --> 00:05:29,820 تم نہیں، امید کرتے ہیں آپ کو یہ تھوڑا سا یاد ہے. 106 00:05:29,820 --> 00:05:34,770 لیکن آپ پھر کوئز 0، تم نے لیا ہے تو بھی میں آن لائن پی ڈی ایف کو رسائی حاصل ہے 107 00:05:34,770 --> 00:05:35,890 نمونہ کے حل. 108 00:05:35,890 --> 00:05:39,480 >> کسی سے پہلے کسی بھی سوال ہے ہم کے بارے میں ہفتے کے مال میں کود 109 00:05:39,480 --> 00:05:41,520 کوئز 0 ایک خاص مسئلہ - 110 00:05:41,520 --> 00:05:44,630 کیوں کا جواب یہ ہے کہ کیا ہے؟ 111 00:05:44,630 --> 00:05:47,255 کسی چیز کے بارے میں الجھن میں ہے؟ 112 00:05:47,255 --> 00:05:50,230 تم صحیح مسئلہ ہے، لیکن یہاں تک کہ اگر صرف مجھ سے یہ تھوڑا سا وضاحت کرنا چاہوں گا 113 00:05:50,230 --> 00:05:52,640 زیادہ، میں اب ایسا کرنے کے لئے خوش ہوں. 114 00:05:52,640 --> 00:05:57,800 >> تو میں تم لوگوں سے کہا ہے کہ کچھ کے ساتھ تیار آئے 115 00:05:57,800 --> 00:05:59,440 کوئز 0 کے بارے میں خیالات. 116 00:05:59,440 --> 00:06:02,660 تو جو ہم حاصل کرنا چاہتے ہیں ایک سوال کے ساتھ یا اس کے شروع کر دیا 117 00:06:02,660 --> 00:06:04,655 کوئز 0 تبصرہ؟ 118 00:06:04,655 --> 00:06:07,435 119 00:06:07,435 --> 00:06:10,410 >> [پیپر RUSTLING] 120 00:06:10,410 --> 00:06:11,470 >> JASON HIRSCHHORN: نہیں سب بالکل کیا. 121 00:06:11,470 --> 00:06:12,720 تو مجھے پتہ [ہنستا ہے] 122 00:06:12,720 --> 00:06:15,950 کچھ سوالات ہونا پڑے کوئز 0 کے بارے میں. 123 00:06:15,950 --> 00:06:27,940 124 00:06:27,940 --> 00:06:28,590 ٹھیک ہے. 125 00:06:28,590 --> 00:06:29,210 جی ہاں. 126 00:06:29,210 --> 00:06:29,600 Ompica. 127 00:06:29,600 --> 00:06:30,520 >> OMPICA: 10 نمبر. 128 00:06:30,520 --> 00:06:33,560 >> JASON HIRSCHHORN: 10 نمبر. 129 00:06:33,560 --> 00:06:35,400 کون سا نمبر 10 تھا؟ 130 00:06:35,400 --> 00:06:35,840 >> OMPICA: - 131 00:06:35,840 --> 00:06:36,420 >> JASON HIRSCHHORN: میں نے haven't - 132 00:06:36,420 --> 00:06:37,670 >> OMPICA: میں شامل ہیں - 133 00:06:37,670 --> 00:06:40,060 134 00:06:40,060 --> 00:06:42,180 >> JASON HIRSCHHORN: 10 نمبر آٹھ سال کی تھی میں - میں آٹھ لکھنے؟ 135 00:06:42,180 --> 00:06:42,980 >> OMPICA: جی ہاں. 136 00:06:42,980 --> 00:06:43,630 >> JASON HIRSCHHORN: ٹھیک ہے. 137 00:06:43,630 --> 00:06:47,390 تو ایک اور سوال آپ کر سکتے ہیں میں prescient رہا تھا پوچھا؟ 138 00:06:47,390 --> 00:06:48,630 جواب ہاں میں ہے. 139 00:06:48,630 --> 00:06:52,060 کوئز سے پہلے حصے میں، میں نے پوچھا تم لوگ سٹرلنگ دونوں کوڈ اور 140 00:06:52,060 --> 00:06:52,980 آٹھ میں. 141 00:06:52,980 --> 00:06:54,770 ان دونوں کو کیا ہوا کوئز پر نظر آتے ہیں. 142 00:06:54,770 --> 00:06:57,510 تو امید ہے کہ، آپ کو ادا کی اس پر توجہ. 143 00:06:57,510 --> 00:07:02,520 >> تمہارے پاس تھا، تو آپ کو پڑے گا شاید ان دونوں پر اچھی طرح سے کیا. 144 00:07:02,520 --> 00:07:06,030 لیکن آٹھ میں، ہم نے اصل میں نہیں کوڈ اس کلاس میں، لیکن یہ، پھر، تھا 145 00:07:06,030 --> 00:07:07,500 گئے تمام سوالات پر پوچھا. 146 00:07:07,500 --> 00:07:13,270 تو لینے کی چیزوں کے ایک جوڑے میں آٹھ کوڈنگ نوٹ جب. 147 00:07:13,270 --> 00:07:17,320 پہلی بات یہ ہے، سوال کے مطابق، تھا آپ کو چیک کرنے کی ضرورت ہے تو سٹرنگ 148 00:07:17,320 --> 00:07:20,300 شہوت انگیز null کے برابر تھا. 149 00:07:20,300 --> 00:07:28,060 >> ایک جوڑے لوگوں کو بعد میں چیک کرنے کی کوشش کی پروگرام میں ے تو بریکٹ میں تھا - 150 00:07:28,060 --> 00:07:30,940 اس میں اتنا ایک مخصوص کردار تار - شہوت انگیز null کے برابر تھا. 151 00:07:30,940 --> 00:07:35,600 لیکن اس شہوت انگیز null بنیادی طور پر ہے، یاد ہے - اس کے بارے میں سوچنا اچھا ہے 152 00:07:35,600 --> 00:07:39,100 ایک صفر پوائنٹر کے طور پر، شہوت انگیز null - صفر پر ایک پوائنٹر - 153 00:07:39,100 --> 00:07:40,920 میموری میں کہیں جہاں آپ تک رسائی حاصل نہیں کر سکتے. 154 00:07:40,920 --> 00:07:44,730 >> اگر ایسا ہے تو تمہیں کچھ، شہوت انگیز null برابر ہے initialized یہ ہے نہیں کیا گیا ہے پتہ ہے کہ، 155 00:07:44,730 --> 00:07:46,430 یا وہاں کچھ بھی نہیں ہے. 156 00:07:46,430 --> 00:07:50,950 تو S، ایک چار ستارہ ے ہے بریکٹ میں ایک چار ہے. 157 00:07:50,950 --> 00:07:57,410 تو یہ، شہوت انگیز null کا موازنہ کرنے کے لئے سمجھ میں آتا ہے لیکن نہیں کی بریکٹ میں، شہوت انگیز null. 158 00:07:57,410 --> 00:07:59,390 لیکن پھر - تو یہ پہلی چیز تھی آپ کیا کرنے والے تھے کہ - 159 00:07:59,390 --> 00:08:03,510 اس بات کو یقینی بنانے کے لئے چیک کرنے کے لیے آپ اصل میں ایک حقیقی سٹرنگ ہے. 160 00:08:03,510 --> 00:08:08,020 >> اگلا، آپ کے ذریعے جانا چاہتا تھا تار میں ہر کردار. 161 00:08:08,020 --> 00:08:12,500 اور تو ہے کہ ایک S بریکٹ طرح ہو جائے گا میں، مثال کے طور پر، میں نے آپ iterator ہے. 162 00:08:12,500 --> 00:08:17,250 اور اس کے کردار کو لے، اور اس کی اصل قیمت حاصل. 163 00:08:17,250 --> 00:08:21,800 تم نے اسے ایک چار کے طور پر محفوظ ہے، لیکن صفر کے لئے ASCII قیمت - 164 00:08:21,800 --> 00:08:23,010 ایک کردار کے طور صفر - 165 00:08:23,010 --> 00:08:25,450 اصل میں عددی صفر نہیں ہے. 166 00:08:25,450 --> 00:08:28,700 یہ آپ کر سکتے ہیں کہ کچھ دوسرے نمبر ہے ASCII ٹیبل میں نظر. 167 00:08:28,700 --> 00:08:30,790 >> تو ایک ہی راستہ اس کے لئے درست کرنے کے لئے - کے لئے درست کرنے کے لئے شاید سب سے بہتر طریقہ 168 00:08:30,790 --> 00:08:33,760 ہے - اس سے منہا کیا جاتا ہے کردار قیمت - 169 00:08:33,760 --> 00:08:35,140 ایک کردار کے طور پر صفر. 170 00:08:35,140 --> 00:08:38,490 تو مائنس ایک اقتباس، صفر، ایک اور ایک اقتباس. 171 00:08:38,490 --> 00:08:44,620 یہی وجہ ہے کہ آپ کے پاس جو کچھ بھی نمبر لے جائے گا ایک چار کے طور پر، اور اس کے برابر حاصل 172 00:08:44,620 --> 00:08:46,720 ایک حقیقی عددی طور پر تعداد. 173 00:08:46,720 --> 00:08:50,300 >> اور اس نقطہ نظر کی طرح ہے لوگوں کی ایک بہت میں لے لیا 174 00:08:50,300 --> 00:08:52,800 مسئلہ کیسر کے ساتھ، 2 سیٹ اور Viginere - 175 00:08:52,800 --> 00:08:55,160 ان خفیہ کار، جب آپ ان کے گھومنے گیا تھا. 176 00:08:55,160 --> 00:08:59,210 آپ کی طرف سے ایک بڑی تعداد کے طور پر یہ ہے تو اس کے بعد صفر سے نو، پھر - کی بنیاد پر 177 00:08:59,210 --> 00:09:02,750 یہ حتمی تعداد میں کہاں جاتا ہے - اگر آپ اسے ضرب کرنے کی ضرورت ہے 178 00:09:02,750 --> 00:09:04,120 10 کے ایک طاقت کی طرف سے. 179 00:09:04,120 --> 00:09:07,340 >> کچھ لوگوں کو پیچھے سے منتقل کر دیا گیا سامنے، اور انفرادی میں کئی گنا اضافہ 180 00:09:07,340 --> 00:09:08,940 10 کے ایک طاقت کی طرف سے بڑی تعداد ہے. 181 00:09:08,940 --> 00:09:11,160 کچھ لوگوں کی طرف سے منتقل کر دیا گیا واپس سامنے - 182 00:09:11,160 --> 00:09:14,430 اور تو سب سے زیادہ لیا سب سے پہلے نمبر حکم - 183 00:09:14,430 --> 00:09:18,190 اور میں ان لوگوں کو بچانے کے کریں گے عالمی انسداد متغیر. 184 00:09:18,190 --> 00:09:20,880 اور اس کے بعد کے لئے کے ذریعے ہر وقت لوپ، ضرب ہے کہ عالمی وشالکای 185 00:09:20,880 --> 00:09:25,640 بنانے کے لئے، 10 کی طرف سے متغیر کا مقابلہ اگلے چار کے لئے جگہ. 186 00:09:25,640 --> 00:09:28,750 >> تو اس کے بغیر ایک چھوٹا سا الجھا تھا مجھے بورڈ پر لکھ. 187 00:09:28,750 --> 00:09:31,550 لیکن نمونے کا حل آپ کے لئے دستیاب ہے. 188 00:09:31,550 --> 00:09:32,870 لیکن ان بڑی باتیں کر رہے تھے ہم کے لئے تلاش کر رہے تھے. 189 00:09:32,870 --> 00:09:36,400 اس کے علاوہ اس بات کا یقین ہر ایک بنانے کے لئے ایک چیک انفرادی کردار ایک ہے بے شک 190 00:09:36,400 --> 00:09:39,780 صفر اور نو، اور نہیں کے درمیان کردار ایک ایک کی طرح کچھ دوسرے کردار،، 191 00:09:39,780 --> 00:09:41,160 مثال کے طور پر. 192 00:09:41,160 --> 00:09:43,150 >> وہ ہم تلاش کر رہے تھے چیزیں تھیں کے لئے اس سوال میں. 193 00:09:43,150 --> 00:09:46,510 194 00:09:46,510 --> 00:09:47,980 کہ آپ کے سوال کا جواب ہے؟ 195 00:09:47,980 --> 00:09:49,320 >> OMPICA: جی ہاں. 196 00:09:49,320 --> 00:09:50,240 >> JASON HIRSCHHORN: ٹھیک ہے. 197 00:09:50,240 --> 00:09:53,940 کسی بھی دیگر سوالات ہیں کوئز 0 کے بارے میں؟ 198 00:09:53,940 --> 00:09:55,440 کیا تالیف کے بارے میں؟ 199 00:09:55,440 --> 00:09:56,740 ہر کوئی حق تالیف؟ 200 00:09:56,740 --> 00:09:58,370 نمبر 201 00:09:58,370 --> 00:09:58,840 ایک تھے - 202 00:09:58,840 --> 00:10:01,010 [ہنستا ہے] 203 00:10:01,010 --> 00:10:03,265 کے بارے میں کوئی سوال تالیف کے عمل؟ 204 00:10:03,265 --> 00:10:06,050 205 00:10:06,050 --> 00:10:06,966 واہ. 206 00:10:06,966 --> 00:10:11,090 >> [پیپر RUSTLING] 207 00:10:11,090 --> 00:10:11,520 >> JASON HIRSCHHORN: جی ہاں. 208 00:10:11,520 --> 00:10:11,700 مائیکل. 209 00:10:11,700 --> 00:10:14,140 >> مائیکل: - بے ترتیب تعداد 7 ہے؟ 210 00:10:14,140 --> 00:10:16,500 >> JASON HIRSCHHORN: نمبر 7. 211 00:10:16,500 --> 00:10:20,670 نمبر 7 ایک بے ترتیب عددی حاصل تھا. 212 00:10:20,670 --> 00:10:21,110 بہترین. 213 00:10:21,110 --> 00:10:25,630 تو آپ کو ایک عددی ایک دیا اور ایک کر رہے ہیں عددی B، اور آپ کو ایک بے ترتیب کرنا چاہتے ہیں 214 00:10:25,630 --> 00:10:28,710 A اور B کے درمیان عددی. 215 00:10:28,710 --> 00:10:31,740 ہم اصل میں اس پر لکھ سکتے ہیں بورڈ، اس کی وجہ یہ ایک 216 00:10:31,740 --> 00:10:33,320 کوڈ کی ایک لائن تھی - 217 00:10:33,320 --> 00:10:34,390 ایسا کرنے کا ایک طریقہ. 218 00:10:34,390 --> 00:10:37,810 >> تو ہم نے ایک کے طور پر drand دی کر رہے ہیں تقریب ہم استعمال کر سکتے ہیں. 219 00:10:37,810 --> 00:10:38,820 اور کیا drand ہے - 220 00:10:38,820 --> 00:10:40,290 یہ ترجیح گیا ہے سنبھالنے - 221 00:10:40,290 --> 00:10:42,316 کیا واپس drand ہے؟ 222 00:10:42,316 --> 00:10:44,840 >> مائیکل: 0.0 اور 1.0 کے درمیان ایک فلوٹ. 223 00:10:44,840 --> 00:10:45,530 >> JASON HIRSCHHORN: ایک بڑی تعداد - جی ہاں. 224 00:10:45,530 --> 00:10:47,910 0 اور 1 کے درمیان ایک بڑی تعداد. 225 00:10:47,910 --> 00:10:51,760 اور اس طرح ہم بی اور ایک ہے. 226 00:10:51,760 --> 00:10:55,480 اور پھر ہم اپنے بے ترتیب تعداد میں ہے 0 کے درمیان اور 1 drand طرف سے ہمیں دیا. 227 00:10:55,480 --> 00:11:01,480 228 00:11:01,480 --> 00:11:06,630 کچھ لوگ بی ڈال کرنے کی کوشش، یا ب مائنس ان کے اندر ایک، یا کچھ اور 229 00:11:06,630 --> 00:11:07,960 قوسین. 230 00:11:07,960 --> 00:11:11,210 وہ ہیں مطلب ہو گا اس تقریب کے دلائل. 231 00:11:11,210 --> 00:11:13,450 >> drand کوئی بحث نہیں لے کرتا ہے - GetString کے کی طرح 232 00:11:13,450 --> 00:11:14,330 کوئی بحث نہیں لے. 233 00:11:14,330 --> 00:11:16,600 تو اس کے قریب، صرف کھلی قوس ہے قوس - اور یہ کہ، خود، ہے 234 00:11:16,600 --> 00:11:17,330 تقریب کال. 235 00:11:17,330 --> 00:11:19,770 اور یہ کہ آپ کو ایک نمبر دیتا ہے 0 کے درمیان اور 1. 236 00:11:19,770 --> 00:11:22,820 کورس کے، ہم ایک مکمل رینج ہے تعداد اندر ہو سکتا ہے 237 00:11:22,820 --> 00:11:28,470 >> B 10 ہے اور ایک 5 ہے تو، ہم واقعی، کا کہنا ہے کہ 5 کی ایک رینج کے ساتھ ایک نمبر کی ضرورت ہے. 238 00:11:28,470 --> 00:11:36,940 تو ہم کیا کرنے کی ضرورت اگلی بات ہے رینج بی مائنس ایک کی طرف سے اس ضرب. 239 00:11:36,940 --> 00:11:40,380 تو اس میں کئی گنا اضافہ ہے سنبھالنے. 240 00:11:40,380 --> 00:11:42,590 اور یہ کہ ہمیں ایک نمبر دے گا ایک دیا رینج کے اندر اندر. 241 00:11:42,590 --> 00:11:46,610 اور اس مخصوص رینج ہونے بی مائنس ایک کے درمیان فرق. 242 00:11:46,610 --> 00:11:50,030 >> اور آخر میں، کہ صرف سے دے دیں گے - بی مائنس ایک کے درمیان رینج کا کہنا ہے کہ 243 00:11:50,030 --> 00:11:52,520 5، کہ ہمیں ایک دے دونگا ہے 0 سے 5 تعداد. 244 00:11:52,520 --> 00:11:56,000 ایک حقیقت 5 میں ہے لیکن اگر ہم کو فروغ دینے کی ضرورت ہے یہ ہے جہاں اس کی حد تک 245 00:11:56,000 --> 00:12:01,380 اصل میں ایک انہوں نے مزید کہا کی طرف سے، ہونا چاہیے. 246 00:12:01,380 --> 00:12:02,580 تو یہ منطق صحیح ہو جاتا ہے. 247 00:12:02,580 --> 00:12:03,745 اور اس کے بعد، آپ کو پڑے گا ایک سوال؟ 248 00:12:03,745 --> 00:12:04,547 >> مائیکل: نمبر 249 00:12:04,547 --> 00:12:06,010 میں صرف اب واقعی گونگا محسوس. 250 00:12:06,010 --> 00:12:06,405 [ہنستا ہے] 251 00:12:06,405 --> 00:12:06,730 >> JASON HIRSCHHORN: نمبر 252 00:12:06,730 --> 00:12:08,640 واقعی گونگا محسوس نہیں کرتے. 253 00:12:08,640 --> 00:12:10,560 لوگوں کی ایک بڑی تعداد جدوجہد اس سوال کے ساتھ. 254 00:12:10,560 --> 00:12:13,920 اور پھر، دوسرے سوال ہے، drand، آپ نے کہا کہ اگر آپ کو فلوٹ دیتا ہے - 255 00:12:13,920 --> 00:12:14,940 ایک فلوٹ واپس. 256 00:12:14,940 --> 00:12:18,020 لیکن اس تقریب اصل میں پوچھا ایک عددی واپس کرنے کے لئے. 257 00:12:18,020 --> 00:12:23,700 >> آپ کو واضح طور پر اس ڈال کرنے کی ضرورت نہیں ہے ایک عدد صحیح، ان کی وجہ سے 258 00:12:23,700 --> 00:12:29,090 آپریشن کے تمام کے طور پر اس کا علاج کریں گے تیرنے لگتے ہیں - چل نقاط تعداد کے طور پر. 259 00:12:29,090 --> 00:12:31,570 اس گی - یہ بھی تو ایک عدد صحیح، یہ مرضی ہے 260 00:12:31,570 --> 00:12:32,890 صحیح طریقے سے کئی گنا بڑھ جائے. 261 00:12:32,890 --> 00:12:34,000 تمام ضرب کام کریں گے. 262 00:12:34,000 --> 00:12:35,060 آپ اسے یہاں ڈال کرنے کی ضرورت نہیں ہے. 263 00:12:35,060 --> 00:12:36,480 اصل میں، آپ کو اس پر ڈال نہیں کرنا چاہئے. 264 00:12:36,480 --> 00:12:37,310 >> کرے گا - 265 00:12:37,310 --> 00:12:40,750 آپ کو ایک ڈالے گا تو ہے 0 اور 1 کے درمیان ہے - 266 00:12:40,750 --> 00:12:42,680 ایک بے ترتیب تعداد، چل نقاط - 267 00:12:42,680 --> 00:12:47,850 پھر اس کے بعد یا تو تو، صرف 0 یا 1 ہو جائے گا آپ کو اس کی صحت سے متعلق کے تمام کھو دیں گے. 268 00:12:47,850 --> 00:12:50,120 لیکن آخر میں، آپ واپس جب، یہ خود کار طریقے جاتا ہے 269 00:12:50,120 --> 00:12:51,620 ایک عددی طور پر واپس بھیج دیا. 270 00:12:51,620 --> 00:12:56,870 تو آپ کیا کرنے کی ضرورت نہیں ہے کہ اپنے آپ کو ڈال. 271 00:12:56,870 --> 00:13:00,810 >> تو اس کا جواب تھا اس سوال کا، نمبر 7. 272 00:13:00,810 --> 00:13:02,190 کوئز 0 پر کسی بھی دوسرے سوال؟ 273 00:13:02,190 --> 00:13:03,300 جی ہاں، ینی. 274 00:13:03,300 --> 00:13:05,050 >> ینی: ہم پنراورتی استعمال کرتے ہیں تو - 275 00:13:05,050 --> 00:13:07,850 جب ہم تکراری loops کے استعمال کرتے ہیں؟ 276 00:13:07,850 --> 00:13:10,210 >> JASON HIRSCHHORN: جب آپ استعمال کرتے ہیں پنراورتی - تو عام طور پر، 277 00:13:10,210 --> 00:13:14,110 تکرار کے مقابلے کے پیشہ اور cons تکراری نقطہ نظر. 278 00:13:14,110 --> 00:13:17,110 کوئی پرو یا ایک CON پیش کر سکتے ہیں؟ 279 00:13:17,110 --> 00:13:19,460 براہ مہربانی؟ 280 00:13:19,460 --> 00:13:20,140 کسی کو نہیں کر سکتے ہیں. 281 00:13:20,140 --> 00:13:22,526 کون پرو یا ایک CON پیش کر سکتے ہیں؟ 282 00:13:22,526 --> 00:13:26,963 >> [پیپر RUSTLING] 283 00:13:26,963 --> 00:13:29,730 >> طالب علم: 1 پنراورتی کم ہے کوڈنگ - کم ٹائپنگ؟ 284 00:13:29,730 --> 00:13:33,170 >> JASON HIRSCHHORN: تو عام طور پر، تکرار خاص طور پر، ایک تقریب - 285 00:13:33,170 --> 00:13:35,750 یا ضم طرح ایک الگورتھم ترتیب - جو خود کو ڈھال لیتا 286 00:13:35,750 --> 00:13:37,300 ایک پنراورتی نقطہ نظر کرنے کے لئے - 287 00:13:37,300 --> 00:13:40,710 زیادہ براہ راست ہو سکتا ہے تکراری طور کوڈ. 288 00:13:40,710 --> 00:13:43,940 اور صرف زیادہ احساس تکراری طور پر کرنے کے لئے. 289 00:13:43,940 --> 00:13:46,230 تو اس تکرار پر ایک حامی ہو جائے گا. 290 00:13:46,230 --> 00:13:46,610 دوسروں؟ 291 00:13:46,610 --> 00:13:47,467 جی ہاں؟ 292 00:13:47,467 --> 00:13:49,240 >> طالب علم 2: تکرار پر CON - 293 00:13:49,240 --> 00:13:50,940 یہ زیادہ میموری استعمال کرتا ہے. 294 00:13:50,940 --> 00:13:52,200 >> JASON HIRSCHHORN: تو بالکل صحیح. 295 00:13:52,200 --> 00:13:55,720 ایک پنراورتی تقریب انہوں نے مزید کہا رکھیں گے اسٹیک اسٹیک فریم. 296 00:13:55,720 --> 00:13:59,690 آپ کی ایک بہت پر کام کر رہے ہیں اگر ایسا ہے تو تعداد، اور اس کو فون کرنے کی ہے 297 00:13:59,690 --> 00:14:02,560 ایک بہت کام ہے، تو آپ کو یقینی طور گا جبکہ، زیادہ میموری لے 298 00:14:02,560 --> 00:14:05,810 تکراری نقطہ نظر صرف ایک ہی ڈال دیا جائے گا ، اسٹیک پر فریم کتابیں رکھی کیونکہ 299 00:14:05,810 --> 00:14:08,420 یہ سب ایک تقریب کے اندر اندر ہوتا ہے. 300 00:14:08,420 --> 00:14:11,010 >> کسی دوسرے کی پیشہ اور cons؟ 301 00:14:11,010 --> 00:14:11,500 جی ہاں. 302 00:14:11,500 --> 00:14:12,550 >> طالب علم 3: تکرار کے لئے پیشہ. 303 00:14:12,550 --> 00:14:15,950 آپ کا تعین کرنے کے لئے کی ضرورت نہیں ہے آگے بڑھانے کتنی بار 304 00:14:15,950 --> 00:14:17,660 کوڈ بار بار کیا جا کرنے کے لئے تھا. 305 00:14:17,660 --> 00:14:22,810 تم میں سے ایک پہلے سے مقرر کی تعداد میں کر سکتے ہیں آپ کو تو، iterate کرنے کے لئے ہے کہ اوقات 306 00:14:22,810 --> 00:14:26,420 تکرار، بہتر ہے، کیونکہ یہ نتیجہ ہے کہ لیتا ہے. 307 00:14:26,420 --> 00:14:27,780 >> JASON HIRSCHHORN: میں نے سچ ہے کہ لگتا ہے. 308 00:14:27,780 --> 00:14:30,770 لیکن میں دونوں صورتوں میں لگتا ہے تم کبھی نہیں کرے گا - 309 00:14:30,770 --> 00:14:33,290 آپ کو شاید کچھ مل جائے گا صارف کی طرف سے ان پٹ. 310 00:14:33,290 --> 00:14:35,990 یا اس تقریب کچھ ان پٹ ہوگا کہ اس بات کا تعین کرے گی کتنی بار یہ 311 00:14:35,990 --> 00:14:36,730 چلانا چاہئے. 312 00:14:36,730 --> 00:14:39,520 تو عام طور پر، آپ کو مشکل کوڈ نہیں کریں گے - یہاں تک کہ ایک تکراری نقطہ نظر میں - کس طرح 313 00:14:39,520 --> 00:14:40,940 کئی بار کہ لوپ چلانا چاہئے. 314 00:14:40,940 --> 00:14:46,100 315 00:14:46,100 --> 00:14:48,670 >> اگر آپ کی ایک اور تھا ینی، کے بارے میں سوچ؟ 316 00:14:48,670 --> 00:14:49,330 ٹھیک ہے. 317 00:14:49,330 --> 00:14:51,650 لہذا ان کو شاید دو ہیں - 318 00:14:51,650 --> 00:14:54,370 سب سے بڑا حامی اور سب سے بڑا کے مقابلے میں ایک پنراورتی پر کون 319 00:14:54,370 --> 00:14:57,080 تکراری نقطہ نظر. 320 00:14:57,080 --> 00:14:57,690 ٹھیک ہے. 321 00:14:57,690 --> 00:14:59,465 کوئز 0 اور کچھ؟ 322 00:14:59,465 --> 00:15:08,940 323 00:15:08,940 --> 00:15:09,920 >> پر منتقل کرتے ہیں. 324 00:15:09,920 --> 00:15:15,260 فائل میں / او ایک عجیب مختصر نہیں ہے اس ہفتے کی فائل میں / O کہ امید ہے کہ 325 00:15:15,260 --> 00:15:19,270 آپ ایک سے زیادہ دیکھا ہے بار، اور تعریف کی. 326 00:15:19,270 --> 00:15:22,910 کام کی ایک بہت ہے کہ میں چلا گیا، اور میں نے یہ انتہائی مددگار ہے سنا. 327 00:15:22,910 --> 00:15:25,740 میں نے بھی، اس سلائڈ پر لنک شامل ہیں صورت میں آپ کو نہیں ہے ایک 328 00:15:25,740 --> 00:15:29,160 یہ 10 بار دیکھنے کے لئے موقع. 329 00:15:29,160 --> 00:15:35,280 >> تو، ہم مختصر طور پر جانے کے لئے جا رہے ہیں کھولنے اور کام کرنے کے لئے اہم اقدامات 330 00:15:35,280 --> 00:15:38,400 فائلوں کے ساتھ، اور پھر ہم جا رہے ہیں سے پہلے ایک کوڈنگ مسئلہ میں کودو 331 00:15:38,400 --> 00:15:40,400 مسئلہ سیٹ کی تحقیقات. 332 00:15:40,400 --> 00:15:44,330 تو پھر، میں اس پیش کرنے جا رہا ہوں سکرین، لیکن میں نے کے لئے بات کرنے کے لئے جا رہا ہوں 333 00:15:44,330 --> 00:15:47,630 ہم اس کے بارے میں صرف ایک منٹ فائل کے ساتھ یہاں کیا کر I/O-- 334 00:15:47,630 --> 00:15:49,090 اس کا کیا مطلب ہے؟ 335 00:15:49,090 --> 00:15:55,280 >> کہ ہم تشکیل دے سکتے ہیں کا مطلب ہے کہ ہمارے پروگراموں، اور پھر ہمارے پروگرام ہوتے ہیں 336 00:15:55,280 --> 00:16:00,370 باہر نکلیں، اور پر کوئی اثر بنا دیا ہے نہیں ہمارے پروگرام کے باہر کی دنیا. 337 00:16:00,370 --> 00:16:04,630 لیکن ہم فائلوں کے ساتھ کام شروع - جب دونوں میں انہیں پڑھنے اور پیدا 338 00:16:04,630 --> 00:16:10,460 ان - ہم پر کچھ اثر ہو سکتا ہے ہمارے پروگرام کے باہر کی دنیا. 339 00:16:10,460 --> 00:16:15,440 >> جیسے مائیکروسافٹ ورڈ کے قابل نہیں تھا اس کے بعد، کسی بھی Word دستاویزات بنانے کے لئے 340 00:16:15,440 --> 00:16:18,710 مائیکروسافٹ ورڈ، آپ کے تمام چھوڑ دیا ایک بار کام چلا جائے گا، اور یہ کریں گے 341 00:16:18,710 --> 00:16:19,740 واقعی بیکار ہو جائے. 342 00:16:19,740 --> 00:16:23,620 ہم بالآخر کرنے کے قابل ہونا چاہتے ہیں متاثر کر سکتا ہے کے پروگرام لکھنا 343 00:16:23,620 --> 00:16:31,350 ان کے ارد گرد کی دنیا، دونوں میں لینے کی طرف سے فائلوں کی شرائط میں اور - کمپلیکس آدانوں 344 00:16:31,350 --> 00:16:37,080 فائلوں کے ذریعے، اور بھی دلچسپ بنانے اور مجبور نتائج - 345 00:16:37,080 --> 00:16:39,520 فائلوں کی مختلف اقسام کے لحاظ سے. 346 00:16:39,520 --> 00:16:43,730 >> ہم شروع کر رہے ہیں یہی وجہ ہے کہ ہے فائلوں کے ساتھ کام کرنے کے بارے میں جاننے کے. 347 00:16:43,730 --> 00:16:47,080 مزید خاص طور پر، کیا ہم نے مندرجہ ذیل کیا ہے. 348 00:16:47,080 --> 00:16:47,680 یہ بہت آسان ہے. 349 00:16:47,680 --> 00:16:51,530 وہاں اقدامات کے صرف ایک جوڑے کی ہیں، اور وہ اس کوڈ کو یہاں درج کر رہے ہیں. 350 00:16:51,530 --> 00:16:55,130 تو ہم کے ذریعے جانے کے لئے جا رہے ہیں لائن کی طرف سے اس کوڈ کو لائن. 351 00:16:55,130 --> 00:16:57,630 >> سب سے پہلے، آپ کو روشنی ڈالی دیکھ - 352 00:16:57,630 --> 00:17:01,330 آپ کو ایک فائل کے ساتھ کام، کر رہے ہیں جب سے قطع نظر فائل کی قسم یہ ہے 353 00:17:01,330 --> 00:17:02,670 تم نے اسے کھولنے کے لئے کی ضرورت ہے. 354 00:17:02,670 --> 00:17:05,130 اور یہ کہ fopen کی ایک کال کے ساتھ ہے - 355 00:17:05,130 --> 00:17:05,950 یہاں. 356 00:17:05,950 --> 00:17:07,980 آپ کو فائل کے نام شامل ہیں. 357 00:17:07,980 --> 00:17:11,930 فائل، اپنی ڈائریکٹری میں نہیں ہے تو یا فولڈر جہاں اس پروگرام 358 00:17:11,930 --> 00:17:15,910 زندگی، تو آپ کو بھی شامل کرنے کی ضرورت اس فائل ہے جہاں کے لئے ایک راستہ. 359 00:17:15,910 --> 00:17:19,099 >> ہم فرض کرنے جا رہے ہیں کہ اس "text.txt" نامی فائل - 360 00:17:19,099 --> 00:17:24,220 ایک سادہ متن دستاویز - ہے اس پروگرام کے طور پر ایک ہی فولڈر میں ہے. 361 00:17:24,220 --> 00:17:26,859 تو ہے کہ میں رکھنے کے لئے ایک اور چیز ہے ذہن - ہے کہ آپ کو ایک فائل کو کھولنے کے لئے چاہتے ہیں تو 362 00:17:26,859 --> 00:17:30,050 کہیں اور، آپ اصل میں ضرورت ہے اس کی جگہ شامل کرنے کے لئے. 363 00:17:30,050 --> 00:17:33,520 >> دوسرا، آپ کو ایک دلیل منتقل کر سکتی ہیں fopen کی، اور یہ کہ آپ کیا کرنا چاہتے ہے 364 00:17:33,520 --> 00:17:34,620 فائل کے ساتھ. 365 00:17:34,620 --> 00:17:38,450 تین اہم دلائل کہ ہیں آپ fopen کی پر منتقل کرنے کے لئے جا رہے ہیں. 366 00:17:38,450 --> 00:17:40,060 کون مجھے ان تین دے سکتے ہیں؟ 367 00:17:40,060 --> 00:17:44,960 368 00:17:44,960 --> 00:17:47,130 کون مجھے ان میں سے ایک دے سکتے ہیں؟ 369 00:17:47,130 --> 00:17:48,130 جی ہاں. 370 00:17:48,130 --> 00:17:50,010 >> طالب علم 4: فائل کا نام؟ 371 00:17:50,010 --> 00:17:50,440 >> JASON HIRSCHHORN: معذرت. 372 00:17:50,440 --> 00:17:55,490 آپ کو منتقل کر سکتے ہیں تین اہم دلائل دوسری دلیل fopen کی کے طور پر. 373 00:17:55,490 --> 00:17:57,060 تم ٹھیک کہتے ہو - فائل کا نام پہلی دلیل ہے. 374 00:17:57,060 --> 00:18:01,620 لیکن fopen کی دوسری دلیل ہیں عام طور پر تین ڈور، اور - جی ہاں. 375 00:18:01,620 --> 00:18:02,210 Aleja. 376 00:18:02,210 --> 00:18:03,490 >> ALEJA: شامل کے لئے ایک. 377 00:18:03,490 --> 00:18:06,840 >> JASON HIRSCHHORN: ایک، آپ چاہتے ہیں تو پہلے سے ہی موجود ہے کہ ایک فائل میں شامل. 378 00:18:06,840 --> 00:18:07,810 >> طالب علم 5: پڑھنے کے لئے ر. 379 00:18:07,810 --> 00:18:09,930 >> JASON HIRSCHHORN: ر، اگر آپ کو ایک فائل سے پڑھنے کے لئے چاہتے ہیں. 380 00:18:09,930 --> 00:18:10,670 >> طالب علم 6: لکھنے کے لئے ڈبلیو. 381 00:18:10,670 --> 00:18:12,840 >> JASON HIRSCHHORN: اور، ڈبلیو، تو آپ ایک فائل میں لکھنے کے لئے چاہتے ہیں. 382 00:18:12,840 --> 00:18:17,570 تو اس صورت میں، ہم لکھ رہے ہیں فائل، تو ہم مغرب ہے. 383 00:18:17,570 --> 00:18:22,360 آپ اسے کھول، آپ کو بھی بچانے کے لئے ہے کہیں فائل، اور اس کے ساتھ ہے 384 00:18:22,360 --> 00:18:26,000 کے بائیں ہاتھ کی طرف کرنے کے لئے کوڈ تفویض آپریٹر - 385 00:18:26,000 --> 00:18:31,220 میں نے ایک فائل پوائنٹر پیدا کر رہا ہوں اس صورت، فائل میں، کہا جاتا ہے. 386 00:18:31,220 --> 00:18:36,070 >> ہمیں فکر کرنے نہیں جا رہے ہیں کیا یہ سب ٹوپیاں فائل بات ہے. 387 00:18:36,070 --> 00:18:40,600 یہ کہنا کافی ہے، یہ ایک طویل ہے zeros اور ہیں کی ندی. 388 00:18:40,600 --> 00:18:44,970 اور یہ کہ ہم جا رہے ہیں کس طرح یہ کام اور یہ سمجھ. 389 00:18:44,970 --> 00:18:47,300 >> ہم کیا کرنے کی ضرورت ہے اگلی بات ہے - اور یہ ناقابل یقین حد تک اہم ہے - 390 00:18:47,300 --> 00:18:49,070 آپ کو ایک فائل کو کھولنے جب بھی - 391 00:18:49,070 --> 00:18:54,250 اصل میں، آپ malloc فون جب بھی، کے لئے مثال کے طور پر، اور کچھ یاد ہو جاؤ اور کوشش کریں 392 00:18:54,250 --> 00:18:57,980 اور آپ کو ہمیشہ، ایک پوائنٹر میں اس کو بچانے کے اس بات کو یقینی بنانے کے لئے چیک کرنے کے لئے چاہتے ہیں کہ 393 00:18:57,980 --> 00:19:00,230 تقریب شہوت انگیز null واپس نہیں کیا. 394 00:19:00,230 --> 00:19:05,230 >> تو اس صورت میں، ہم کرنے کے لئے کی جانچ پڑتال کر رہے ہیں ہم اصل میں کھول دیا اس بات کا یقین 395 00:19:05,230 --> 00:19:10,230 صحیح طریقے سے فائل، اور وہاں تھا ہمارے پروگرام میں کوئی غلطی. 396 00:19:10,230 --> 00:19:15,160 اگلا، ایک بار ہم اس بات کو یقینی بنانے کے لئے جانچ پڑتال کی ہے ہم کر سکتے ہیں، ایک کام کر فائل ہے کہ 397 00:19:15,160 --> 00:19:18,520 ، لکھیں، یا پڑھنے کی طرف سے یا فائل میں شامل. 398 00:19:18,520 --> 00:19:24,270 اس صورت میں، میں صرف پرنٹنگ ہوں اس فائل ایک لائن. 399 00:19:24,270 --> 00:19:25,450 >> مجھے کس طرح پتہ ہے کہ ہے؟ 400 00:19:25,450 --> 00:19:27,990 ٹھیک ہے، میں اس تقریب کا استعمال کرتے ہوئے کر رہا ہوں fprintf کہا جاتا ہے. 401 00:19:27,990 --> 00:19:30,970 آپ استعمال کریں گے افعال میں سے سب ، کرنے کے لئے لکھنے یا سے، یا جب پڑھنے 402 00:19:30,970 --> 00:19:34,950 فائلوں کو توڑ کے لئے اسی طرح کی ہو جائے گا تم سے پہلے دیکھا ہے، لیکن افعال 403 00:19:34,950 --> 00:19:38,420 خط ایف کے ساتھ شروع، فائل کے لئے کھڑے. 404 00:19:38,420 --> 00:19:43,440 اور fprintf، ہمارے عام پرنٹ کے برعکس اے پی پی، ایک اضافی دلیل لیتا ہے، 405 00:19:43,440 --> 00:19:47,800 اور یہ کہ فائل ہے جہاں آپ کرنے کے لئے اس لائن پرنٹ کرنا چاہتے ہیں. 406 00:19:47,800 --> 00:19:50,640 >> میں کچھ بھی نہیں ہے ohai کا حق. 407 00:19:50,640 --> 00:19:52,860 میں نے تیسری نہیں ہے دلیل printf - 408 00:19:52,860 --> 00:19:57,030 یا دوسری دلیل printf سے، تیسری دلیل fprintf کرنے کے لئے، کیونکہ میں 409 00:19:57,030 --> 00:19:59,480 یہاں کسی بھی جگہ دار نہیں ہے. 410 00:19:59,480 --> 00:20:01,070 میں کسی بھی متغیر سمیت نہیں کر رہا ہوں. 411 00:20:01,070 --> 00:20:06,070 لیکن پھر، fprintf اور ان فائل کی تمام فائلوں کے ساتھ کام کام کرتا ہے 412 00:20:06,070 --> 00:20:09,820 عام طور پر فائل کی ضرورت ہے کرنے کے لئے جا رہے ہیں جس پر وہ کام کر رہے ہیں. 413 00:20:09,820 --> 00:20:15,960 >> آخر میں، آخری اہم بات کرنے کے لئے صرف کی طرح، فائل کو بند کرنے کے لئے ہے 414 00:20:15,960 --> 00:20:19,530 کے ساتھ - ہم کچھ MALLOC جب بھی، ہم ایسا نہ ہو، کچھ آزاد کرنا چاہتے ہیں 415 00:20:19,530 --> 00:20:22,730 ایک میموری لیک ہے - ہم چاہتے ہیں ہماری فائل بند کرنے کے لئے. 416 00:20:22,730 --> 00:20:28,180 اس پروگرام کے بند کئے بغیر باہر تو فائل، مشکلات کچھ نہیں جائیں گے ہیں 417 00:20:28,180 --> 00:20:30,050 غلط، خاص طور پر اگر یہ ایک چھوٹی سی فائل تھی. 418 00:20:30,050 --> 00:20:35,020 >> لیکن یہ یقینی طور پر اچھا کوڈنگ سٹائل ہے اور ہمیشہ آپ کی فائل بند کرنے کی مشق 419 00:20:35,020 --> 00:20:38,050 اگر آپ اسے استعمال کرتے ہوئے ختم کر رہے ہیں جب. 420 00:20:38,050 --> 00:20:43,630 تو اس فائل کی بنیادی باتیں I / O. ہے آپ نے شاید اس سے پہلے کہ دیکھا، یا ہے 421 00:20:43,630 --> 00:20:45,710 کہ تصوراتی، بہترین مختصر میں دیکھا. 422 00:20:45,710 --> 00:20:48,410 کسی کے سامنے، میں کوئی سوال ہے ہم نے کچھ پریکٹس کوڈنگ میں جاؤ 423 00:20:48,410 --> 00:20:51,800 فائل کے بارے میں مسائل، I / O یا اقدامات میں صرف گئے؟ 424 00:20:51,800 --> 00:21:00,198 425 00:21:00,198 --> 00:21:03,162 >> [ٹائپنگ آواز] 426 00:21:03,162 --> 00:21:04,150 >> JASON HIRSCHHORN: کیا تم ایک سوال، AVI ہے؟ 427 00:21:04,150 --> 00:21:04,660 >> AVI: نمبر 428 00:21:04,660 --> 00:21:04,740 >> JASON HIRSCHHORN: ٹھیک ہے. 429 00:21:04,740 --> 00:21:06,746 میں نے ایک اور انتظار کرنے کے لئے جا رہا ہوں سات چلیں. 430 00:21:06,746 --> 00:21:07,590 [ہنستا ہے] 431 00:21:07,590 --> 00:21:08,620 کہ واقعی ایک اچھی ٹپ ہے. 432 00:21:08,620 --> 00:21:10,750 تم لوگ پسند نہیں کرتے سوال پوچھ. 433 00:21:10,750 --> 00:21:11,660 یہ ٹھیک ہے. 434 00:21:11,660 --> 00:21:12,330 ٹھیک ہے. 435 00:21:12,330 --> 00:21:17,620 تو ہماری پہلی مشق مسئلہ ہم ہیں، ہے تقریب کی نقل کرنے کے لئے جا 436 00:21:17,620 --> 00:21:22,330 ایک کمانڈ لائن کا آلہ ہے کہ آپ شاید کاپی - اس سے پہلے استعمال کیا جاتا ہے - 437 00:21:22,330 --> 00:21:23,500 کاپی کے آلے. 438 00:21:23,500 --> 00:21:28,050 آپ CP ٹائپ کریں اور پھر اس کے پاس تو دو آپ کے ٹرمنل میں دلائل، آپ کر سکتے ہیں 439 00:21:28,050 --> 00:21:28,980 ایک فائل کی کاپی. 440 00:21:28,980 --> 00:21:31,220 اور یہ کہ ہم جا رہے ہیں کیا ہے ابھی لکھنا. 441 00:21:31,220 --> 00:21:35,830 >> تو پھر، اس سلائڈ سے دور پڑھنے، میں تھا آپ کو لے کہ ایک پروگرام کو لکھنے کے لئے 442 00:21:35,830 --> 00:21:38,130 دو اور دو کمانڈ لائن صرف دلائل - 443 00:21:38,130 --> 00:21:40,750 ایک ذریعے فائل اور ایک منزل فائل - 444 00:21:40,750 --> 00:21:44,590 اور کاپیاں ذریعہ کے مندرجات منزل فائل فائل 445 00:21:44,590 --> 00:21:46,960 ایک وقت میں ایک بائٹ. 446 00:21:46,960 --> 00:21:48,510 تو اس کے لئے طلب کرنے کے لئے ایک بہت ہے. 447 00:21:48,510 --> 00:21:52,200 >> ایک بار پھر، اس کے لئے ایک اچھا نقطہ نظر ہے C کوڈ کے براہ راست جا، لیکن نہیں 448 00:21:52,200 --> 00:21:54,280 اقدامات کے ایک جوڑے میں ٹوٹ. 449 00:21:54,280 --> 00:21:58,400 سب سے پہلے، منطق کے بارے میں لگتا ہے کہ - بالکل مجھے کیا کرنا تم سے پوچھ رہا ہوں - 450 00:21:58,400 --> 00:22:00,620 اور سب سمجھ اس مسئلہ کے لئے اقدامات. 451 00:22:00,620 --> 00:22:04,410 نہیں سی، صرف کچھ pseudocode میں، یا اس سے بھی ایک ذہنی ماڈل 452 00:22:04,410 --> 00:22:06,030 کیا ہو رہا ہے. 453 00:22:06,030 --> 00:22:10,050 >> اگلا، آپ pseudocode نیچے ہے ایک بار، یہ اعداد و شمار کس طرح pseudocode 454 00:22:10,050 --> 00:22:14,600 آلات اور ہم نے چیزوں پر نقشے سی میں استعمال کرنے کے لئے سیکھا ہے 455 00:22:14,600 --> 00:22:19,070 >> اور آخر میں، ایک بار آپ سب کو ہے کہ ایک دوسرے کے ساتھ، آپ کے مسئلہ کو کوڈ کر سکتے ہیں. 456 00:22:19,070 --> 00:22:23,370 کرنے کے لئے 5 سے 10 منٹ لے لو اس مسئلہ پر کام. 457 00:22:23,370 --> 00:22:25,800 میں دی گئی ہدایات پر ڈال دیں گے واپس ایک دوسرے میں. 458 00:22:25,800 --> 00:22:27,990 اور پھر ہم پر جانے کے لئے جا رہے ہیں pseudocode، اور کوڈ 459 00:22:27,990 --> 00:22:29,230 یہ ایک گروپ کے طور پر رہتے ہیں. 460 00:22:29,230 --> 00:22:31,640 >> تم جبکہ آپ کوئی سوال ہے تو اس پر کام کر، بلند کرنے کے لئے آزاد محسوس کرتے ہیں 461 00:22:31,640 --> 00:22:34,260 آپ کے ہاتھ، اور میں آ جائے گا کے ارد گرد اور ان کا جواب. 462 00:22:34,260 --> 00:22:37,020 463 00:22:37,020 --> 00:22:39,330 >> طالب علم 7: میں نے swipe کے کر سکتے ہیں ایک کاغذ کا ٹکڑا؟ 464 00:22:39,330 --> 00:22:41,537 >> JASON HIRSCHHORN: کیا بات ہے؟ 465 00:22:41,537 --> 00:26:46,047 466 00:26:46,047 --> 00:26:48,043 >> [ٹائپنگ آواز] 467 00:26:48,043 --> 00:26:48,730 >> JASON HIRSCHHORN: ٹھیک ہے. 468 00:26:48,730 --> 00:26:51,710 کی پہلی pseudocode پر چلتے ہیں، اور تو میں آپ کو ایک جوڑے کو دے دونگا 469 00:26:51,710 --> 00:26:52,960 منٹ کوڈنگ ختم کرنے کے لئے. 470 00:26:52,960 --> 00:26:55,540 471 00:26:55,540 --> 00:26:58,650 >> کون مجھ سے دور شروع کرنے کے لئے چاہتے ہیں کی پہلی سطر کے ساتھ 472 00:26:58,650 --> 00:27:00,030 اس تقریب کے لئے pseudocode؟ 473 00:27:00,030 --> 00:27:03,330 474 00:27:03,330 --> 00:27:05,740 >> طالب علم 8: اس بات کو یقینی بنانے کے لئے چیک کریں آپ کو دو فائلوں کو دیا گیا. 475 00:27:05,740 --> 00:27:06,990 >> JASON HIRSCHHORN: ٹھیک ہے. 476 00:27:06,990 --> 00:27:21,270 477 00:27:21,270 --> 00:27:22,990 اور ہم نہیں ہیں؟ 478 00:27:22,990 --> 00:27:25,974 >> طالب علم 8: میں 0 واپس کریں گے. 479 00:27:25,974 --> 00:27:27,872 >> JASON HIRSCHHORN: ہم واپس 0 چاہئے؟ 480 00:27:27,872 --> 00:27:30,182 >> طالب علم 8: ایک واپسی - 481 00:27:30,182 --> 00:27:30,650 blanking. 482 00:27:30,650 --> 00:27:30,850 معذرت. 483 00:27:30,850 --> 00:27:31,210 >> JASON HIRSCHHORN: جی ہاں. 484 00:27:31,210 --> 00:27:32,710 شاید نہیں 0. 485 00:27:32,710 --> 00:27:34,680 0 سب کچھ اچھا تھا کیونکہ اس کا مطلب. 486 00:27:34,680 --> 00:27:35,030 ٹھیک ہے. 487 00:27:35,030 --> 00:27:36,730 تو اس پہلی لائن ہے pseudocode کی. 488 00:27:36,730 --> 00:27:38,715 کون pseudocode کی دوسری لائن ہے؟ 489 00:27:38,715 --> 00:27:40,630 >> طالب علم 9: فائلوں دونوں کھلے؟ 490 00:27:40,630 --> 00:27:41,880 >> JASON HIRSCHHORN: دونوں فائلوں کو کھولنے کے. 491 00:27:41,880 --> 00:27:49,970 492 00:27:49,970 --> 00:27:50,920 ٹھیک ہے؟ 493 00:27:50,920 --> 00:27:52,850 >> طالب علم 10: دیکھنے کے لئے چیک فائل خالی ہے؟ 494 00:27:52,850 --> 00:28:10,906 495 00:28:10,906 --> 00:28:12,580 >> JASON HIRSCHHORN: کرنے کے لئے چیک اس بات کا یقین نل ہیں نہ. 496 00:28:12,580 --> 00:28:15,800 ایک طرف ایک - 497 00:28:15,800 --> 00:28:17,540 0 سلیش - 498 00:28:17,540 --> 00:28:18,887 کہ شہوت انگیز null ہے؟ 499 00:28:18,887 --> 00:28:20,080 >> طالب علم 11: نمبر 500 00:28:20,080 --> 00:28:21,190 >> JASON HIRSCHHORN: یہ نل نہیں ہے. 501 00:28:21,190 --> 00:28:23,400 کہ شہوت انگیز null مختتم کہا جاتا ہے. 502 00:28:23,400 --> 00:28:25,580 یہ اصل میں صرف ایک ایل کے ساتھ ہجے. 503 00:28:25,580 --> 00:28:28,580 تو اس کے خلاف کچھ کی جانچ پڑتال - کہ اصل میں ایک کردار ہے - 504 00:28:28,580 --> 00:28:31,710 تو اس کے خلاف کچھ کر رہا ہے کی جانچ پڑتال دیکھنے کے لئے کی جانچ پڑتال کے طور پر ہی نہیں تو یہ 505 00:28:31,710 --> 00:28:32,690 نل کے برابر ہے. 506 00:28:32,690 --> 00:28:34,100 >> اور کچھ لوگ - 507 00:28:34,100 --> 00:28:36,040 ان quizzes اور ان کے مسئلہ پر سیٹ - مل گیا ہے 508 00:28:36,040 --> 00:28:36,890 الجھن میں ان میں سے دو. 509 00:28:36,890 --> 00:28:38,830 لیکن ان کے دو ہیں مختلف حقیقت میں. 510 00:28:38,830 --> 00:28:40,220 ایک ایک تار ختم ہو جاتی ہے - 511 00:28:40,220 --> 00:28:43,210 ایک 0 پوائنٹر ہے. 512 00:28:43,210 --> 00:28:46,490 >> طالب علم 12: کیوں آپ کو چیک نہیں کیا جائے گا فائلوں نل نہیں ہیں کہ بات کو یقینی بنانے 513 00:28:46,490 --> 00:28:48,670 آپ ان کے کھولنے سے پہلے؟ 514 00:28:48,670 --> 00:28:54,772 >> JASON HIRSCHHORN: تو کھولیں بچاتا ہے اس فائل میں کچھ. 515 00:28:54,772 --> 00:28:57,780 اور تم یہاں واپس جانا ہے - 516 00:28:57,780 --> 00:28:59,520 تو اس لائن - fopen کی - 517 00:28:59,520 --> 00:29:05,300 آپ کو ایک ایڈریس اور سٹور دے گا یہ کام کرتا ہے اگر فائل میں اس ایڈریس. 518 00:29:05,300 --> 00:29:07,650 یہ کام نہیں کرتا ہے، تو یہ نل جمع کریں گے - 519 00:29:07,650 --> 00:29:08,020 >> طالب علم 12: اوہ. 520 00:29:08,020 --> 00:29:08,180 ٹھیک ہے. 521 00:29:08,180 --> 00:29:08,500 پکڑ لیا. 522 00:29:08,500 --> 00:29:09,050 >> JASON HIRSCHHORN: فائل میں. 523 00:29:09,050 --> 00:29:11,990 تو کیا تم نل کے لئے چیک نہیں کر سکتے ہیں آپ ان کو کھول دیا ہے اس سے پہلے. 524 00:29:11,990 --> 00:29:13,520 نل کچھ نہیں کیا مطلب ہے صحیح طریقے سے کام. 525 00:29:13,520 --> 00:29:18,030 526 00:29:18,030 --> 00:29:18,740 ٹھیک ہے. 527 00:29:18,740 --> 00:29:22,590 اتنا یقین نہ ہے بنانے کے لئے چیک کریں؟ 528 00:29:22,590 --> 00:29:23,200 یا ہیں؟ 529 00:29:23,200 --> 00:29:23,770 ہم کیا سوچتے ہیں؟ 530 00:29:23,770 --> 00:29:24,310 ہم اس کے ساتھ جائیں گے. 531 00:29:24,310 --> 00:29:24,520 >> طالب علم: 13 ہے. 532 00:29:24,520 --> 00:29:25,020 >> JASON HIRSCHHORN: ہے؟ 533 00:29:25,020 --> 00:29:25,930 نہ تو؟ 534 00:29:25,930 --> 00:29:26,350 >> طالب علم: 13 ہے. 535 00:29:26,350 --> 00:29:26,390 >> JASON HIRSCHHORN: ٹھیک ہے. 536 00:29:26,390 --> 00:29:28,510 ہم کچھ کرنے کے لئے لگ رہے ہو اس پر اتفاق رائے. 537 00:29:28,510 --> 00:29:30,520 نل ہے نہ. 538 00:29:30,520 --> 00:29:32,250 ٹھیک ہے، pseudocode کی اگلی لائن. 539 00:29:32,250 --> 00:29:33,600 کون مجھے ابھی تک ایک لائن نہیں دی ہے؟ 540 00:29:33,600 --> 00:29:37,350 541 00:29:37,350 --> 00:29:38,295 ہم آپ کے لئے انتظار کریں گے. 542 00:29:38,295 --> 00:29:39,020 جی ہاں. 543 00:29:39,020 --> 00:29:40,895 >> طالب علم 14: آپ کو پڑھنے کے لئے ہے پہلی فائل سے؟ 544 00:29:40,895 --> 00:29:42,290 >> JASON HIRSCHHORN: ٹھیک ہے. 545 00:29:42,290 --> 00:29:46,240 >> طالب علم 14: یا ہم fscanf کا استعمال یا کہ سب سے پہلے فائل کی طرح کچھ؟ 546 00:29:46,240 --> 00:29:50,650 >> JASON HIRSCHHORN: تو ہم کرنا چاہتے ہیں پہلی فائل سے پڑھنے کے اور - 547 00:29:50,650 --> 00:29:51,900 حق کہ یہاں ڈال. 548 00:29:51,900 --> 00:30:00,600 549 00:30:00,600 --> 00:30:01,880 ذریعہ فائل سے پڑھنے کے. 550 00:30:01,880 --> 00:30:05,370 اور پھر، ہم نے اس کے بعد کیا کرتے ہیں سورس فائل سے پڑھنے کے؟ 551 00:30:05,370 --> 00:30:06,620 کسی اور؟ 552 00:30:06,620 --> 00:30:09,150 553 00:30:09,150 --> 00:30:12,190 >> طالب علم 15: لکھنے میں منزل فائل؟ 554 00:30:12,190 --> 00:30:22,080 555 00:30:22,080 --> 00:30:25,620 >> JASON HIRSCHHORN: ہم لکھیں منزل فائل، اور - 556 00:30:25,620 --> 00:30:26,210 ٹھیک ہے. 557 00:30:26,210 --> 00:30:30,030 ہم اور کیا یاد کر رہے ہیں؟ 558 00:30:30,030 --> 00:30:32,460 مجھے ایک نہیں دی ہے جو کسی اور ابھی کوڈ کے لائن - pseudocode کی. 559 00:30:32,460 --> 00:30:33,510 جی ہاں. 560 00:30:33,510 --> 00:30:36,540 >> طالب علم 16: ہو سکتا ہے کہ آپ کو ہمیشہ چیک کر سکتے ہیں چاہے کے لئے پڑھنے کے لئے کچھ ہے، 561 00:30:36,540 --> 00:30:37,970 اگلی لائن کی طرح؟ 562 00:30:37,970 --> 00:30:39,550 اگلی لائن طرح ہیں، اگر یہ موجود ہے کو دیکھنے کے. 563 00:30:39,550 --> 00:30:40,660 >> [الیکٹرانک بیپ] 564 00:30:40,660 --> 00:30:41,095 >> JASON HIRSCHHORN: افوہ. 565 00:30:41,095 --> 00:30:43,120 یہ میری journaling سافٹ ویئر ہے. 566 00:30:43,120 --> 00:30:43,580 جی ہاں؟ 567 00:30:43,580 --> 00:30:44,960 >> طالب علم 16: جی ہاں. 568 00:30:44,960 --> 00:30:48,940 >> JASON HIRSCHHORN: تو دے یہ میرے لئے ایک بار. 569 00:30:48,940 --> 00:30:51,640 >> طالب علم 16: وہاں ہے یا نہیں کی جانچ پڑتال کریں کی طرف سے اب بھی ایک اگلی لائن 570 00:30:51,640 --> 00:30:52,920 پڑھنے کے ذریعہ فائل. 571 00:30:52,920 --> 00:30:53,500 >> JASON HIRSCHHORN: ٹھیک ہے. 572 00:30:53,500 --> 00:30:56,060 تو ہم لائنوں پڑھنے نہیں کر رہے ہیں - یہاں بائٹس پڑھ رہے تھے - 573 00:30:56,060 --> 00:30:57,590 لیکن آپ درست ہیں. 574 00:30:57,590 --> 00:31:00,040 ہم جب تک پڑھنے اور لکھنے کے لئے چاہتے ہیں کوئی بائٹس ہیں. 575 00:31:00,040 --> 00:31:11,430 576 00:31:11,430 --> 00:31:11,735 ٹھیک ہے. 577 00:31:11,735 --> 00:31:16,940 اور اس طرح یہ واقعی پوٹ دار ہونا چاہئے تھوڑا سا، وہ وہاں کے تحت رہے ہیں. 578 00:31:16,940 --> 00:31:17,470 ٹھیک ہے نا؟ 579 00:31:17,470 --> 00:31:20,620 ہم بائٹس سے باہر ہیں جب تک، ہم جا رہے ہیں سورس فائل سے پڑھنے اور لکھنے 580 00:31:20,620 --> 00:31:22,160 منزل فائل. 581 00:31:22,160 --> 00:31:24,510 >> اور پھر، آخری ہے pseudocode کی لائن؟ 582 00:31:24,510 --> 00:31:26,380 دیا نہیں ہے کوئی جو مجھے کچھ ابھی تک. 583 00:31:26,380 --> 00:31:29,270 584 00:31:29,270 --> 00:31:30,260 >> طالب علم: 17 فائلوں قریب؟ 585 00:31:30,260 --> 00:31:31,510 >> JASON HIRSCHHORN: بالکل. 586 00:31:31,510 --> 00:31:36,370 587 00:31:36,370 --> 00:31:37,450 فائلوں کو بند کریں. 588 00:31:37,450 --> 00:31:38,400 تو اپنے pseudocode ہے. 589 00:31:38,400 --> 00:31:41,870 میں میں pseudocode ڈال کرنے جا رہا ہوں کی gedit، اور منٹ کے ایک جوڑے میں ہم 590 00:31:41,870 --> 00:31:44,626 ایک ساتھ مل کر اس کوڈ کو کیا جائے گا. 591 00:31:44,626 --> 00:33:55,280 592 00:33:55,280 --> 00:33:56,000 >> ٹھیک ہے. 593 00:33:56,000 --> 00:33:58,290 ہمیں ایک گروپ کے طور پر شروع ہو جاتے ہیں. 594 00:33:58,290 --> 00:33:59,940 نشانت، میں اپنے نئے فائل ہے. 595 00:33:59,940 --> 00:34:01,130 میں صرف اس کے لئے کھول دیا ہے. 596 00:34:01,130 --> 00:34:01,880 بلا عنوان دستاویز 1. 597 00:34:01,880 --> 00:34:05,490 مجھے کیا کرنا چاہئے سب سے پہلی چیز کیا ہے؟ 598 00:34:05,490 --> 00:34:07,040 >> NISHANT: لائبریریوں کو شامل؟ 599 00:34:07,040 --> 00:34:08,219 >> JASON HIRSCHHORN: ٹھیک ہے. 600 00:34:08,219 --> 00:34:11,070 کیا لائبریریاں؟ 601 00:34:11,070 --> 00:34:17,570 >> NISHANT: stdio.h کی، stdlib.h، مجھے یقین ہے؟ 602 00:34:17,570 --> 00:34:18,000 >> JASON HIRSCHHORN: ٹھیک ہے. 603 00:34:18,000 --> 00:34:21,592 کے لئے stdlib کیا ہے؟ 604 00:34:21,592 --> 00:34:23,010 >> NISHANT: میں بھول گیا. 605 00:34:23,010 --> 00:34:23,219 >> JASON HIRSCHHORN: ٹھیک ہے. 606 00:34:23,219 --> 00:34:24,179 تو stdio میں شامل ہیں. 607 00:34:24,179 --> 00:34:28,630 میں نے بھی اس سے پہلے کیا کرنا چاہئے میں کوڈنگ گیا ہے؟ 608 00:34:28,630 --> 00:34:29,710 >> NISHANT: ایک ہیڈر لکھیں؟ 609 00:34:29,710 --> 00:34:31,830 >> JASON HIRSCHHORN: کس طرح یہ رنگ میں حاصل کرتے ہیں؟ 610 00:34:31,830 --> 00:34:34,060 >> [INTERPOSING آوازیں] 611 00:34:34,060 --> 00:34:35,040 >> NISHANT: کس طرح آپ کو یہ رنگ حاصل کرتے ہیں؟ 612 00:34:35,040 --> 00:34:38,060 >> JASON HIRSCHHORN: کس طرح میں کوڈنگ رنگ ہے؟ 613 00:34:38,060 --> 00:34:38,570 >> NISHANT: میں نہیں جانتا. 614 00:34:38,570 --> 00:34:38,830 اوہ. 615 00:34:38,830 --> 00:34:39,389 محفوظ کریں. 616 00:34:39,389 --> 00:34:39,929 >> JASON HIRSCHHORN: محفوظ کریں. 617 00:34:39,929 --> 00:34:40,270 جی ہاں. 618 00:34:40,270 --> 00:34:41,760 میں ایک. سی کے طور پر اس کو بچانے کے لئے کرنا چاہئے. 619 00:34:41,760 --> 00:34:46,239 تو cp.c. کے طور پر ڈیسک ٹاپ پر اس کو بچانے کے 620 00:34:46,239 --> 00:34:47,280 میٹھی. 621 00:34:47,280 --> 00:34:51,199 اور مجھے مکمل سٹائل حاصل کرنے کے لئے چاہتے ہیں تو پوائنٹس، کیا مجھے 622 00:34:51,199 --> 00:34:53,085 سب سے اوپر میں شامل ہیں؟ 623 00:34:53,085 --> 00:34:58,390 >> NISHANT: آپ کو اپنا نام، نام لکھ سکتے تھے پروگرام، اور اس مقصد کے 624 00:34:58,390 --> 00:34:59,640 اس کے ساتھ ساتھ پروگرام کا؟ 625 00:34:59,640 --> 00:35:08,400 626 00:35:08,400 --> 00:35:10,040 >> JASON HIRSCHHORN: اچھا لگتا ہے. 627 00:35:10,040 --> 00:35:10,470 بہترین. 628 00:35:10,470 --> 00:35:12,940 تو آپ بالکل ہمارے دور شروع کر دیا ہے. 629 00:35:12,940 --> 00:35:13,720 # میں شامل ہیں - 630 00:35:13,720 --> 00:35:15,365 ہم بھی لکھیں گے - 631 00:35:15,365 --> 00:35:30,050 632 00:35:30,050 --> 00:35:30,870 ٹھیک ہے. 633 00:35:30,870 --> 00:35:33,520 تو میں نے سب کو جانا قائم رہا ہوں. 634 00:35:33,520 --> 00:35:38,003 جو میرے لئے کوڈ کی پہلی لائن ہے - یا کوڈ کی پہلی لائنوں کہ 635 00:35:38,003 --> 00:35:41,280 یہ ہماری پہلی مطمئن کرنے کے لئے لے جائے گا pseudocode میں تبصرہ؟ 636 00:35:41,280 --> 00:35:41,985 آپ. 637 00:35:41,985 --> 00:35:48,780 >> طالب علم 18: یہ INT نہیں ہونا چاہئے جہاں argc، اور پھر چار * argv؟ 638 00:35:48,780 --> 00:35:49,490 >> JASON HIRSCHHORN: مجھے لگتا ہے کہ تم صحیح ہو. 639 00:35:49,490 --> 00:35:56,270 یہ اہم، کھلی قوس int میں تبدیل کرتے ہیں، INT جہاں argc، کوما، چار * argv؟ 640 00:35:56,270 --> 00:35:57,150 کی طرح؟ 641 00:35:57,150 --> 00:35:57,410 >> طالب علم: 18 قوسین. 642 00:35:57,410 --> 00:35:58,260 >> JASON HIRSCHHORN: قوسین. 643 00:35:58,260 --> 00:35:59,860 کھلا بریکٹ، بند بریکٹ، بند والدین. 644 00:35:59,860 --> 00:36:00,240 کامل. 645 00:36:00,240 --> 00:36:02,160 اب میں کمانڈ لائن کے دلائل لے جا سکتے ہیں. 646 00:36:02,160 --> 00:36:02,430 ٹھیک ہے. 647 00:36:02,430 --> 00:36:04,250 ہم دو فائلوں کو دے رہے ہیں اس بات کا یقین. 648 00:36:04,250 --> 00:36:07,905 آپ کے ساتھ ساتھ مجھے دے سکتے ہیں. 649 00:36:07,905 --> 00:36:09,180 >> طالب علم: 18 جہاں argc ہے - 650 00:36:09,180 --> 00:36:11,060 یہ ایک 3 کے برابر نہیں ہے. 651 00:36:11,060 --> 00:36:14,360 >> JASON HIRSCHHORN: اگر کھلی قوس 3 جہاں argc کے برابر نہیں ہے؟ 652 00:36:14,360 --> 00:36:16,970 >> طالب علم 18: جی ہاں، آپ واپس 1 یا کچھ بھی. 653 00:36:16,970 --> 00:36:17,460 >> JASON HIRSCHHORN: معذرت. 654 00:36:17,460 --> 00:36:19,120 >> طالب علم: 18 واپس 1 یا کچھ. 655 00:36:19,120 --> 00:36:20,270 >> JASON HIRSCHHORN: واپس 1. 656 00:36:20,270 --> 00:36:22,230 ٹھیک ہے؟ 657 00:36:22,230 --> 00:36:22,970 عظیم. 658 00:36:22,970 --> 00:36:24,290 دونوں فائلوں کو کھولنے کے. 659 00:36:24,290 --> 00:36:26,160 کون میرے دونوں فائلوں کو کھولنے میں مدد کر سکتے ہیں؟ 660 00:36:26,160 --> 00:36:28,125 کون مجھے ابھی تک کوڈ نہیں دیا گیا ہے؟ 661 00:36:28,125 --> 00:36:31,510 662 00:36:31,510 --> 00:36:32,320 کرٹ؟ 663 00:36:32,320 --> 00:36:36,145 >> کرٹ: تو تمام بڑے حروف ایف میں ایل ای سٹار ذریعہ. 664 00:36:36,145 --> 00:36:39,390 665 00:36:39,390 --> 00:36:40,920 >> JASON HIRSCHHORN: میں جا رہا ہوں سر باہر لے جانا. 666 00:36:40,920 --> 00:36:41,570 لوگ اچھے ہیں. 667 00:36:41,570 --> 00:36:42,716 یہ Tumblr طرح ہے. 668 00:36:42,716 --> 00:36:44,610 >> طالب علم: 18 fopen کی برابر - 669 00:36:44,610 --> 00:36:46,612 >> JASON HIRSCHHORN: fopen کی برابر ہے؟ 670 00:36:46,612 --> 00:36:49,870 >> طالب علم: 18 کھلی قوس، ہے argv، اوپن بریکٹ. 671 00:36:49,870 --> 00:36:50,055 >> JASON HIRSCHHORN: انتظار. 672 00:36:50,055 --> 00:36:50,240 معذرت. 673 00:36:50,240 --> 00:36:51,050 کھلی قوس. 674 00:36:51,050 --> 00:36:51,456 ٹھیک ہے. 675 00:36:51,456 --> 00:36:53,080 >> طالب علم 18: جی ہاں. 676 00:36:53,080 --> 00:36:55,110 ہے argv ذیلی 1. 677 00:36:55,110 --> 00:36:55,860 >> JASON HIRSCHHORN: سب 1؟ 678 00:36:55,860 --> 00:36:56,140 >> طالب علم 18: جی ہاں. 679 00:36:56,140 --> 00:36:58,540 ہے argv کھولیں بریکٹ 1 - 680 00:36:58,540 --> 00:36:59,730 جی ہاں. 681 00:36:59,730 --> 00:37:06,470 اور پھر کوما، اور پھر کھولیں ڈبل اقتباس، R، ڈبل اقتباس، 682 00:37:06,470 --> 00:37:08,250 بند قوس، نیم وقفہ. 683 00:37:08,250 --> 00:37:09,450 >> JASON HIRSCHHORN: میٹھی. 684 00:37:09,450 --> 00:37:10,950 اور کیا ایک دوسرے کے بارے میں؟ 685 00:37:10,950 --> 00:37:16,030 >> طالب علم: 18 بہت اسی طرح، بلکہ اس کی بجائے S-R-C کے، آپ کو D-S-T یہ فون کروں گا. 686 00:37:16,030 --> 00:37:17,060 >> JASON HIRSCHHORN: جی! 687 00:37:17,060 --> 00:37:17,772 مجھے یہ پسند ہے. 688 00:37:17,772 --> 00:37:20,010 >> طالب علم 18: بس D-S-T. جی ہاں. 689 00:37:20,010 --> 00:37:23,057 اور پھر،، 2 اوپن بریکٹ میں argv. 690 00:37:23,057 --> 00:37:23,200 جی ہاں. 691 00:37:23,200 --> 00:37:26,720 اور پھر مغرب کی بجائے ر. 692 00:37:26,720 --> 00:37:27,620 جی ہاں. 693 00:37:27,620 --> 00:37:29,630 >> JASON HIRSCHHORN: عظیم. 694 00:37:29,630 --> 00:37:31,360 لائنوں کے اگلے دو. 695 00:37:31,360 --> 00:37:34,040 اس کے علاوہ، کسی کو شامل کرنے کے لئے چیزوں کو ہے ہم نے کیا کیا ہے کہ لائنز، کرنے کے لئے آزاد محسوس کرتے ہیں 696 00:37:34,040 --> 00:37:35,690 اس کے ساتھ ساتھ ان لوگوں کو شامل کریں. 697 00:37:35,690 --> 00:37:37,520 اس بات کا یقین نہ تو نل ہے بنانے کے لئے چیک کریں. 698 00:37:37,520 --> 00:37:41,450 کون مجھ سے مجھے اس کی ضرورت کوڈ دے سکتے ہیں pseudocode کی اس لائن کو پورا؟ 699 00:37:41,450 --> 00:37:44,430 700 00:37:44,430 --> 00:37:45,870 آرچر. 701 00:37:45,870 --> 00:37:58,645 >> آرچر: ایسآرسی برابر برابر تو شہوت انگیز null یا ڈیایسٹی برابر برابر 702 00:37:58,645 --> 00:38:04,590 نل، تو آپ کو واپسی - 703 00:38:04,590 --> 00:38:07,130 704 00:38:07,130 --> 00:38:07,976 >> JASON HIRSCHHORN: کیا؟ 705 00:38:07,976 --> 00:38:08,890 >> آرچر: 2 واپس؟ 706 00:38:08,890 --> 00:38:09,760 >> JASON HIRSCHHORN: 2 واپس. 707 00:38:09,760 --> 00:38:14,400 تو کھلی قوس ایسآرسی برابر ہے نل کے برابر ہے، یا - 708 00:38:14,400 --> 00:38:15,590 کہ thing's جو بھی - پائپ؟ 709 00:38:15,590 --> 00:38:16,346 پائپ؟ 710 00:38:16,346 --> 00:38:17,140 ہم پائپ اسے فون کروں گا. 711 00:38:17,140 --> 00:38:22,340 پائپ، پائپ، ڈیایسٹی برابر برابر نل، 2 واپس. 712 00:38:22,340 --> 00:38:23,900 ٹھیک ہے؟ 713 00:38:23,900 --> 00:38:26,060 ہم بائٹس سے باہر ہیں جب تک - 714 00:38:26,060 --> 00:38:29,820 ہم قسم کی طرف سے یہ قدم کے دوران چھوڑا یہاں جا pseudocode حصہ. 715 00:38:29,820 --> 00:38:31,970 >> لیکن جب تک ہم بائٹس سے باہر ہیں - کہ آواز کی طرح کیا کرتا ہے؟ 716 00:38:31,970 --> 00:38:34,680 سی ساخت کس قسم کی - 717 00:38:34,680 --> 00:38:36,160 لیکن میں نے لفظ کی ساخت کا استعمال نہیں کرتے، ہم کا استعمال کرتے ہوئے شروع کرنے کے لئے جا رہے ہیں 718 00:38:36,160 --> 00:38:37,350 کہ دوسری صورت میں - 719 00:38:37,350 --> 00:38:39,495 لیکن C آلہ کی طرح وہ آواز ہے؟ 720 00:38:39,495 --> 00:38:39,970 >> طالب علم 19: ایک لوپ. 721 00:38:39,970 --> 00:38:40,980 >> JASON HIRSCHHORN: ایک لوپ. 722 00:38:40,980 --> 00:38:43,060 ایک لوپ کی طرح لگتا ہے. 723 00:38:43,060 --> 00:38:49,670 تو جو پہلی سطر دے سکتے ہیں یہاں لوپ کوڈ کی؟ 724 00:38:49,670 --> 00:38:56,320 725 00:38:56,320 --> 00:39:01,980 آپ یہ بھی منتخب کر سکتے ہیں کس قسم کی کیا آپ مجھے دے لوپ آپ چاہتے ہیں 726 00:39:01,980 --> 00:39:03,215 کوڈ کی اس لائن. 727 00:39:03,215 --> 00:39:04,150 تین اقسام ہیں. 728 00:39:04,150 --> 00:39:06,530 آپ کو لینے کے لئے حاصل. 729 00:39:06,530 --> 00:39:08,080 میں نے ان میں سے ایک تجویز کرے گا. 730 00:39:08,080 --> 00:39:08,410 AVI. 731 00:39:08,410 --> 00:39:09,230 آپ کو کون سا کرنا چاہتے ہیں؟ 732 00:39:09,230 --> 00:39:09,960 >> AVI: کے لئے. 733 00:39:09,960 --> 00:39:11,460 >> JASON HIRSCHHORN: کے لئے. 734 00:39:11,460 --> 00:39:15,180 >> AVI: میں صفر کے برابر INT. 735 00:39:15,180 --> 00:39:17,360 >> JASON HIRSCHHORN: ٹھیک ہے. 736 00:39:17,360 --> 00:39:18,570 >> AVI: کے بارے میں یقین نہیں ہے یہ حصہ. 737 00:39:18,570 --> 00:39:29,080 لیکن میں سائز سے کم ہے سٹار ذریعہ کی؟ 738 00:39:29,080 --> 00:39:31,128 مجھے اس بات کا یقین نہیں ہوں. 739 00:39:31,128 --> 00:39:32,580 >> JASON HIRSCHHORN: ٹھیک ہے. 740 00:39:32,580 --> 00:39:35,870 >> آپ چاہتے ہیں کیونکہ: AVI ایک فائل کے سائز کی، ٹھیک ہے؟ 741 00:39:35,870 --> 00:39:41,090 >> JASON HIRSCHHORN: تو شاید یہ نہیں کریں گے ہم اصل کا سائز دے 742 00:39:41,090 --> 00:39:43,010 بائٹس میں فائل. 743 00:39:43,010 --> 00:39:47,680 تو ہم اور کیا کر سکتا ہے؟ 744 00:39:47,680 --> 00:39:48,810 لوپ کی ایک اور قسم کیا ہے؟ 745 00:39:48,810 --> 00:39:50,180 یا ہم کے لئے لوپ کے ساتھ رہنا چاہئے؟ 746 00:39:50,180 --> 00:39:55,350 747 00:39:55,350 --> 00:39:57,900 >> طالب علم 20: اگر آپ کو ایک جبکہ لوپ کر سکتے ہیں؟ 748 00:39:57,900 --> 00:40:01,350 اور پھر، آپ کیا چاہتے ہیں you'd ہے - 749 00:40:01,350 --> 00:40:03,930 ہم فائل کے لئے ایک چار * ہے کیونکہ. 750 00:40:03,930 --> 00:40:07,950 ہم صرف incrementing رکھنے کہ اگر ہم شہوت انگیز null کردار میں تلاش کروں گا جب تک 751 00:40:07,950 --> 00:40:08,500 اس کے آخر؟ 752 00:40:08,500 --> 00:40:11,130 یا کوئی، فائلوں کو کس طرح کام نہیں ہے؟ 753 00:40:11,130 --> 00:40:14,300 >> JASON HIRSCHHORN: تو ہم رکھ سکتے ہیں چار * incrementing 754 00:40:14,300 --> 00:40:16,340 ہم شہوت انگیز null تلاش تک - 755 00:40:16,340 --> 00:40:18,580 >> طالب علم 20: بنیادی طور پر جاری رکھنے کردار سے کردار ہم کو مارا ہے جب تک 756 00:40:18,580 --> 00:40:21,250 فائل کے آخر میں. 757 00:40:21,250 --> 00:40:21,600 >> JASON HIRSCHHORN: جی ہاں. 758 00:40:21,600 --> 00:40:22,560 تو ہے کہ ہم کیا کرنا چاہتے ہے. 759 00:40:22,560 --> 00:40:24,545 ہم پڑھنے، کردار رکھنا چاہتے ہیں کردار کی طرف سے، ہم جب تک 760 00:40:24,545 --> 00:40:25,080 فائل کے آخر میں. 761 00:40:25,080 --> 00:40:25,375 >> طالب علم 20: جی ہاں. 762 00:40:25,375 --> 00:40:25,860 تلاش کریں - 763 00:40:25,860 --> 00:40:28,540 آخر یا سٹاپ سائن کیا ہے ایک ٹیکسٹ فائل کے آخر میں. 764 00:40:28,540 --> 00:40:28,620 >> JASON HIRSCHHORN: ٹھیک ہے. 765 00:40:28,620 --> 00:40:30,140 تو ہم فائل کے آخر میں حاصل کرنے کے لئے - جب کس طرح ہم تک پہنچ چکے ہیں جانتے ہیں 766 00:40:30,140 --> 00:40:33,200 ایک فائل کے آخر؟ 767 00:40:33,200 --> 00:40:34,710 میں بلا رہا ہوں تو - 768 00:40:34,710 --> 00:40:35,910 تو قدم پیچھے ہیں. 769 00:40:35,910 --> 00:40:37,550 ایک تقریب کیا ہے؟ 770 00:40:37,550 --> 00:40:39,360 کی یہیں اس لائن پر چلتے ہیں. 771 00:40:39,360 --> 00:40:40,630 ذریعہ فائل سے پڑھنے کے. 772 00:40:40,630 --> 00:40:41,880 مجھے کون کوڈ کی اس لائن دے سکتے ہیں؟ 773 00:40:41,880 --> 00:40:45,592 774 00:40:45,592 --> 00:40:47,590 >> طالب علم 21: Fscanf؟ 775 00:40:47,590 --> 00:40:49,110 >> JASON HIRSCHHORN: Fscanf. 776 00:40:49,110 --> 00:40:49,510 ٹھیک ہے. 777 00:40:49,510 --> 00:40:52,240 کیا میں پڑھنے کے لئے چاہتے ہیں، تو بہت خاص طور پر، ایک بائٹ؟ 778 00:40:52,240 --> 00:40:55,012 779 00:40:55,012 --> 00:40:56,860 >> طالب علم 21: مجھے نہیں معلوم. 780 00:40:56,860 --> 00:40:57,110 >> JASON HIRSCHHORN: ٹھیک ہے. 781 00:40:57,110 --> 00:40:59,380 fscanf سے بھی آسان ہے - ایک کیا ہے - 782 00:40:59,380 --> 00:41:01,890 میں نے ایک ذریعہ فائل سے پڑھنے کے لئے چاہتے ہیں؟ 783 00:41:01,890 --> 00:41:03,720 ایک ذریعے فائل سے پڑھنے کے. 784 00:41:03,720 --> 00:41:04,850 ایک تقریب کیا ہے - جی ہاں. 785 00:41:04,850 --> 00:41:05,380 >> طالب علم 22: یہ fread ہے؟ 786 00:41:05,380 --> 00:41:06,070 >> JASON HIRSCHHORN: Fread. 787 00:41:06,070 --> 00:41:07,550 میں کے ساتھ رہنا ہیں لگتا ہے اب کے لئے کہ ایک. 788 00:41:07,550 --> 00:41:10,380 789 00:41:10,380 --> 00:41:13,650 دلائل کے کس طرح fread لگتا ہے؟ 790 00:41:13,650 --> 00:41:17,410 >> طالب علم 22: شاید فائل کی قسم، اور پھر فائل میں مقام؟ 791 00:41:17,410 --> 00:41:19,550 >> JASON HIRSCHHORN: میں یہاں کیا ٹائپ کر سکتے ہیں اعداد و شمار کے دلائل کی قسم 792 00:41:19,550 --> 00:41:20,950 fread لیتا ہے؟ 793 00:41:20,950 --> 00:41:23,710 >> ایک سے زیادہ طالب علموں: انسان fread. 794 00:41:23,710 --> 00:41:24,740 >> JASON HIRSCHHORN: انسان fread اور fwrite. 795 00:41:24,740 --> 00:41:25,980 وہ ایک ساتھ باہر پھانسی کی طرح لگتا ہے. 796 00:41:25,980 --> 00:41:29,589 تو fread کتنے دلائل لگتا ہے؟ 797 00:41:29,589 --> 00:41:30,920 >> طالب علم 23: چار. 798 00:41:30,920 --> 00:41:32,690 >> JASON HIRSCHHORN: یہ لیتا ہے چار دلائل. 799 00:41:32,690 --> 00:41:41,100 یہ ایک پوائنٹر، ایک سائز لیتا ہے، اور یہ کہ عجیب ہے جو چیز،، اور کچھ فائل. 800 00:41:41,100 --> 00:41:42,000 ٹھیک ہے؟ 801 00:41:42,000 --> 00:41:43,990 کے یہاں اس کے بارے میں پڑھیں. 802 00:41:43,990 --> 00:41:49,370 "تقریب fread ن memb پڑھتا ہے اعداد و شمار کے عناصر، ہر سائز بائٹس 803 00:41:49,370 --> 00:41:53,840 طویل، ندی سے کی طرف سے کی طرف اشارہ مقام پر ان کے محفوظ کرنے، ندی 804 00:41:53,840 --> 00:41:56,170 پوائنٹر کی طرف سے دی. " 805 00:41:56,170 --> 00:41:57,960 >> تو چار دلائل. 806 00:41:57,960 --> 00:42:04,510 کیوں میں نے صرف اس کی کاپی نہیں ہے، اور یہاں چسپاں کر دیں. 807 00:42:04,510 --> 00:42:10,060 808 00:42:10,060 --> 00:42:10,770 ٹھیک ہے. 809 00:42:10,770 --> 00:42:13,673 تو جو بھرنے شروع کر سکتے ہیں میرے لئے ان دلائل؟ 810 00:42:13,673 --> 00:42:15,840 AVI. 811 00:42:15,840 --> 00:42:17,720 >> AVI: باطل باہر لے جاؤ. 812 00:42:17,720 --> 00:42:20,530 صرف ایسآرسی رکھو. 813 00:42:20,530 --> 00:42:23,142 پوائنٹر اور سٹار باہر لے جاؤ. 814 00:42:23,142 --> 00:42:26,102 ایسآرسی رکھو. 815 00:42:26,102 --> 00:42:27,050 اس کے بعد - 816 00:42:27,050 --> 00:42:28,500 >> JASON HIRSCHHORN: تو مجھے روکنے کے لئے جا رہا ہوں وہاں آپ کو، کہ غلط ہے کیونکہ. 817 00:42:28,500 --> 00:42:32,590 818 00:42:32,590 --> 00:42:34,710 آپ ایسآرسی کے ساتھ صحیح ہیں، لیکن ایسآرسی کہاں جانا چاہئے؟ 819 00:42:34,710 --> 00:42:35,960 >> [INTERPOSING آوازیں] 820 00:42:35,960 --> 00:42:38,976 821 00:42:38,976 --> 00:42:41,610 >> JASON HIRSCHHORN: یہ چاہئے یہاں جانا. 822 00:42:41,610 --> 00:42:43,790 یہ ایسآرسی ہے - ہماری ایسآرسی ایک قسم ہے. 823 00:42:43,790 --> 00:42:44,610 یہاں دیکھو. 824 00:42:44,610 --> 00:42:49,610 یہ ایک قسم کی فائل * کے لئے پوچھ رہا ہے، ہم دراصل عام طور پر اس طرح ان کو دیکھنے کے. 825 00:42:49,610 --> 00:42:57,630 تو اس کی ایک دلیل کے لئے پوچھ رہا ہے * ایسآرسی ہے کہ کہا جاتا ہے ندی فائل کی قسم. 826 00:42:57,630 --> 00:42:58,480 ٹھیک ہے؟ 827 00:42:58,480 --> 00:43:00,410 >> چیزوں کو کس سائز ہم پڑھنے کے لئے چاہتے ہیں؟ 828 00:43:00,410 --> 00:43:03,340 میں آپ کو اس دی مسئلہ کی تفصیل. 829 00:43:03,340 --> 00:43:04,370 >> طالب علم 24: ایک وقت میں ایک بائٹ. 830 00:43:04,370 --> 00:43:05,340 >> JASON HIRSCHHORN: ایک بائٹ. 831 00:43:05,340 --> 00:43:08,205 ایک بائٹ کتنا بڑا ہے؟ 832 00:43:08,205 --> 00:43:11,642 اس کا سائز بائٹس میں ہے، تو کیا ہوا میں ابھی وہاں ڈال کر سکتے ہیں؟ 833 00:43:11,642 --> 00:43:12,910 >> طالب علم 25: ایک. 834 00:43:12,910 --> 00:43:14,730 >> JASON HIRSCHHORN: ایک. 835 00:43:14,730 --> 00:43:17,020 ٹھیک ہے. 836 00:43:17,020 --> 00:43:19,940 اس کے سائز یونٹ بائٹ میں ہے، تو 1 1 بائٹ ہے. 837 00:43:19,940 --> 00:43:22,284 میں ایک وقت میں پڑھنے کے لئے کتنے چاہتے ہیں. 838 00:43:22,284 --> 00:43:23,520 >> طالب علم 26: ایک؟ 839 00:43:23,520 --> 00:43:24,270 >> JASON HIRSCHHORN: ایک بات. 840 00:43:24,270 --> 00:43:28,540 میں کے سائز کی ایک بات کو پڑھنے کے لئے چاہتے ہیں، 1، ایک وقت میں ایک کاٹنے. 841 00:43:28,540 --> 00:43:32,110 میں نے اسے پڑھا اور ایک بار جہاں میں، ڈال دیا ہے؟ 842 00:43:32,110 --> 00:43:35,050 843 00:43:35,050 --> 00:43:36,510 >> طالب علم 27: مقصود؟ 844 00:43:36,510 --> 00:43:39,270 >> JASON HIRSCHHORN: تو میں نہیں ڈال سکتا یہ براہ راست منزل میں. 845 00:43:39,270 --> 00:43:40,800 >> طالب علم 28: تم ڈال رہے ہیں یہ ایک تیسری پوائنٹر میں؟ 846 00:43:40,800 --> 00:43:41,780 >> طالب علم 27 منزل پر. 847 00:43:41,780 --> 00:43:42,270 >> JASON HIRSCHHORN: ٹھیک ہے. 848 00:43:42,270 --> 00:43:42,630 جی ہاں. 849 00:43:42,630 --> 00:43:46,820 >> طالب علم 29: تم سے کچھ اعلان کر سکتے ہیں عارضی اسٹوریج پہلے کے طور پر کام. 850 00:43:46,820 --> 00:43:47,350 >> JASON HIRSCHHORN: ٹھیک ہے. 851 00:43:47,350 --> 00:43:50,080 وہ مجھے دو. 852 00:43:50,080 --> 00:43:53,930 >> طالب علم 29: ایک فائل پوائنٹر، شاید؟ 853 00:43:53,930 --> 00:43:54,220 >> JASON HIRSCHHORN: ٹھیک ہے. 854 00:43:54,220 --> 00:43:55,585 تو یہ باطل ستارہ ہے - 855 00:43:55,585 --> 00:43:57,750 یہ ایک قسم صفر ستارہ ہے، تو ایسا نہیں ہوتا ایک فائل پوائنٹر ہونا پڑے گا. 856 00:43:57,750 --> 00:44:02,520 اور میں ایک بائٹ پڑھ رہا ہوں تو، ایک اچھی جگہ ہو گی جہاں 857 00:44:02,520 --> 00:44:03,850 ایک بائٹ سٹور کرنے کے لئے؟ 858 00:44:03,850 --> 00:44:04,660 >> طالب علم 29: ایک صف؟ 859 00:44:04,660 --> 00:44:05,770 >> JASON HIRSCHHORN: ایک صف. 860 00:44:05,770 --> 00:44:07,730 ٹھیک ہے. 861 00:44:07,730 --> 00:44:14,040 اور ہے کہ کچھ اور کیا ہے صرف ایک بائٹ سائز؟ 862 00:44:14,040 --> 00:44:16,980 863 00:44:16,980 --> 00:44:18,060 >> طالب علم 30: ایک چار *؟ 864 00:44:18,060 --> 00:44:18,530 >> طالب علم 29: جی ہاں. 865 00:44:18,530 --> 00:44:19,880 >> JASON HIRSCHHORN: ایک چار * ایک بائٹ نہیں ہے. 866 00:44:19,880 --> 00:44:20,440 >> طالب علم 29: ایک چار. 867 00:44:20,440 --> 00:44:21,810 >> JASON HIRSCHHORN: ایک چار ایک بائٹ ہے. 868 00:44:21,810 --> 00:44:22,920 ٹھیک ہے نا؟ 869 00:44:22,920 --> 00:44:26,740 تو اس بفر فون ایک عام ہے ذخیرہ کرنے کے لئے ان چیزوں کے لئے استعمال کیا نام 870 00:44:26,740 --> 00:44:27,910 کچھ عارضی طور پر. 871 00:44:27,910 --> 00:44:30,880 تو میں نے ایک بفر کی تخلیق. 872 00:44:30,880 --> 00:44:31,150 ٹھیک ہے نا؟ 873 00:44:31,150 --> 00:44:32,990 لیکن یہ * ایک باطل لگتا ہے. 874 00:44:32,990 --> 00:44:38,660 تو شاید آپ ٹھیک کہتے ہیں کہ یہ 0 سائز کے ایک بفر ہونا چاہئے. 875 00:44:38,660 --> 00:44:41,070 تو یہ ایک اسٹورز - 876 00:44:41,070 --> 00:44:41,280 حق. 877 00:44:41,280 --> 00:44:43,560 >> کیونکہ یہاں اس حق - چار بفر کردار ہے، لیکن 878 00:44:43,560 --> 00:44:45,110 یہ * ایک صفر لیتا ہے - 879 00:44:45,110 --> 00:44:45,870 ایک پوائنٹر. 880 00:44:45,870 --> 00:44:50,640 تو اب میں یہ کرتے ہیں اور کر سکتے ہیں بفر پوائنٹر ہے. 881 00:44:50,640 --> 00:44:53,214 میں اور کیا کر سکتا ہے؟ 882 00:44:53,214 --> 00:44:55,775 >> طالب علم 31: چار اگلا ایک ستارہ رکھو. 883 00:44:55,775 --> 00:44:58,380 >> JASON HIRSCHHORN: میں کر سکتا ہوں یہ چار * پیدا کیا ہے. 884 00:44:58,380 --> 00:45:00,216 ٹھیک ہے. 885 00:45:00,216 --> 00:45:03,131 میں کر سکتا دوسری بات کیا ہے؟ 886 00:45:03,131 --> 00:45:04,050 یا اس ایک کے ساتھ جانے. 887 00:45:04,050 --> 00:45:05,740 چار * بفر، تو کیا میں یہاں ڈال دیا ہے؟ 888 00:45:05,740 --> 00:45:08,290 889 00:45:08,290 --> 00:45:09,310 >> طالب علم 31 بفر. 890 00:45:09,310 --> 00:45:10,560 >> JASON HIRSCHHORN: بفر. 891 00:45:10,560 --> 00:45:12,640 892 00:45:12,640 --> 00:45:14,500 بفر ایک چار پوائنٹر ہے. 893 00:45:14,500 --> 00:45:19,480 اور اس جگہ میں، ہم ڈال رہے ہیں ہم نے پڑھا ہے کچھ میں سے ایک بائٹ. 894 00:45:19,480 --> 00:45:19,980 جی ہاں. 895 00:45:19,980 --> 00:45:20,700 AVI. 896 00:45:20,700 --> 00:45:21,230 >> AVI: صرف ایک فوری سوال ہے. 897 00:45:21,230 --> 00:45:24,440 آپ بفر MALLOC کرنا چاہتے ہیں؟ 898 00:45:24,440 --> 00:45:25,930 >> JASON HIRSCHHORN: جو اس سوال کا جواب؟ 899 00:45:25,930 --> 00:45:30,210 >> طالب علم 32: ٹھیک ہے، یہ واقعی نہیں ابھی کچھ نقطہ، تو - 900 00:45:30,210 --> 00:45:32,610 >> JASON HIRSCHHORN: لیکن ہم اس MALLOC کرنا چاہتے ہیں؟ 901 00:45:32,610 --> 00:45:35,600 >> طالب علم 32: اگر آپ ایسا کرنے کے لئے تھے کہ آپ کی ضرورت چاہتے کیونکہ جس طرح سے، میں، جی ہاں، لگتا ہے 902 00:45:35,600 --> 00:45:36,990 اس کی طرف اشارہ کرنے کے لئے کچھ جگہ. 903 00:45:36,990 --> 00:45:38,350 >> JASON HIRSCHHORN: ہم کیا کرتے ہیں یہ MALLOC ہے؟ 904 00:45:38,350 --> 00:45:40,580 >> طالب علم 33: اگر آپ جا رہے ہیں لوپ سے باہر اس کا استعمال. 905 00:45:40,580 --> 00:45:42,524 >> JASON HIRSCHHORN: ہم جا رہے ہیں لوپ سے باہر اس کا استعمال؟ 906 00:45:42,524 --> 00:45:44,392 >> طالب علم 34: جی ہاں. 907 00:45:44,392 --> 00:45:44,860 >> طالب علم 35: انتظار. 908 00:45:44,860 --> 00:45:46,980 ہم اس کا اعلان کرنا چاہتے ہیں سے باہر کرنے کے لوپ میں؟ 909 00:45:46,980 --> 00:45:50,100 >> JASON HIRSCHHORN: تو میں ہم لگتا ہے یہاں ہم ہیں کہ کچھ چھدم جبکہ لوپ 910 00:45:50,100 --> 00:45:51,950 ، اعداد و شمار کی کوشش کر رہے ہیں کہ ہم ابھی تک نہیں ملا ہے. 911 00:45:51,950 --> 00:45:54,710 912 00:45:54,710 --> 00:45:56,010 ہم اس MALLOC کی ضرورت نہیں ہے. 913 00:45:56,010 --> 00:45:59,310 ہم اہم میں کام کر رہے ہیں، یہ صرف جا رہا ہے اس لوپ کے اندر استعمال کیا جائے گا. 914 00:45:59,310 --> 00:46:00,540 اس پر موجود کی ضرورت نہیں ہے اس کے باہر. 915 00:46:00,540 --> 00:46:02,340 >> تو یہ ایک مقامی متغیر ہو سکتا ہے. 916 00:46:02,340 --> 00:46:03,925 آپ کو ایک پوائنٹر کے لئے ہے ایک مقامی متغیر. 917 00:46:03,925 --> 00:46:07,984 918 00:46:07,984 --> 00:46:09,590 >> طالب علم 36: لیکن یہ نہیں ہے کچھ کی طرف اشارہ. 919 00:46:09,590 --> 00:46:11,540 >> JASON HIRSCHHORN: نہیں، یہ نہیں ہے کچھ initialized ہے. 920 00:46:11,540 --> 00:46:12,790 لیکن ہم بھی اس کا استعمال نہیں کر رہے ہیں. 921 00:46:12,790 --> 00:46:15,300 ہم میں کچھ ڈال کے لئے جا رہے ہیں یہ پہلی بار ہم نے اسے استعمال کرتے ہیں. 922 00:46:15,300 --> 00:46:16,580 تو یہ ٹھیک لگتا ہے. 923 00:46:16,580 --> 00:46:17,780 تو ہم یہاں malloc کی ضرورت نہیں ہے. 924 00:46:17,780 --> 00:46:19,360 اور میں ہے کے طور پر یہ ٹھیک ہے. 925 00:46:19,360 --> 00:46:24,350 926 00:46:24,350 --> 00:46:25,790 ٹھیک ہے. 927 00:46:25,790 --> 00:46:27,190 ہم fread لائن ہے. 928 00:46:27,190 --> 00:46:28,490 کی اگلی لائن کرتے ہیں. 929 00:46:28,490 --> 00:46:32,984 >> ہم نے ایک فائل کو لکھنے کے لئے چاہتے ہیں، تو کیا ہے ایسا کرنے کے لئے استعمال کرنے کے لئے ایک اچھی تقریب؟ 930 00:46:32,984 --> 00:46:33,770 >> طالب علم 37: Fwrite؟ 931 00:46:33,770 --> 00:46:35,140 >> طالب علم 38: Fprintf؟ 932 00:46:35,140 --> 00:46:36,010 >> JASON HIRSCHHORN: Fprintf میں سے ایک ہے. 933 00:46:36,010 --> 00:46:37,260 ایک کیا ہے؟ 934 00:46:37,260 --> 00:46:37,680 >> طالب علم 39: Fwrite. 935 00:46:37,680 --> 00:46:38,510 >> JASON HIRSCHHORN: Fwrite. 936 00:46:38,510 --> 00:46:41,250 اور ہمارے مقاصد کے لئے، fwrite، ہم یہاں جس نے دیکھا، ہے 937 00:46:41,250 --> 00:46:42,500 شاید بہتر انتخاب. 938 00:46:42,500 --> 00:46:51,970 939 00:46:51,970 --> 00:46:53,950 اس کے ساتھ ساتھ چار دلائل لیتا ہے. 940 00:46:53,950 --> 00:46:57,570 نشانت، آپ کو دے سکتا دلائل مجھے؟ 941 00:46:57,570 --> 00:47:00,570 >> NISHANT: سب سے پہلے کی جا صرف بفر ہو. 942 00:47:00,570 --> 00:47:02,210 >> JASON HIRSCHHORN: ٹھیک ہے. 943 00:47:02,210 --> 00:47:06,752 >> NISHANT: دوسرا ایک صرف 1 جا رہا. 944 00:47:06,752 --> 00:47:09,510 تیسرا 1 جا رہا ہے. 945 00:47:09,510 --> 00:47:11,470 اور چوتھے ایک ڈیایسٹی جا رہا ہے. 946 00:47:11,470 --> 00:47:18,010 947 00:47:18,010 --> 00:47:19,550 >> JASON HIRSCHHORN: کسی کو ہے اس لائن کے بارے میں کوئی سوال ہے؟ 948 00:47:19,550 --> 00:47:28,370 949 00:47:28,370 --> 00:47:29,130 یہ اچھا لگتا ہے. 950 00:47:29,130 --> 00:47:29,590 ٹھیک ہے. 951 00:47:29,590 --> 00:47:34,250 تو اب یہ ہم ایک چیز کی طرح لگتا ہے لاپتہ - اصل میں، لکھنے 952 00:47:34,250 --> 00:47:35,090 یہ آخری لائن. 953 00:47:35,090 --> 00:47:36,300 فائلوں کو بند کریں. 954 00:47:36,300 --> 00:47:38,880 کون تحریری طور پر ہمیں ختم کر سکتے ہیں ان آخری دو لائنوں؟ 955 00:47:38,880 --> 00:47:39,120 جی ہاں. 956 00:47:39,120 --> 00:47:39,850 معذرت، آپ کا نام کیا ہے؟ 957 00:47:39,850 --> 00:47:40,580 >> LUCY: لسی. 958 00:47:40,580 --> 00:47:41,580 >> JASON HIRSCHHORN: لسی. 959 00:47:41,580 --> 00:47:47,560 >> LUCY: پھر میں fclose ایسآرسی اور میں fclose منزل. 960 00:47:47,560 --> 00:47:52,430 >> JASON HIRSCHHORN: میں fclose، کھلی قوس، ایسآرسی، قریبی قوس، نیم وقفہ. 961 00:47:52,430 --> 00:47:53,680 اور میں fclose - 962 00:47:53,680 --> 00:47:57,560 963 00:47:57,560 --> 00:47:58,090 جی ہاں؟ 964 00:47:58,090 --> 00:48:01,710 >> LUCY: کھولیں قوسین، ڈیایسٹی اور اس کے بعد نیم وقفہ. 965 00:48:01,710 --> 00:48:02,520 >> JASON HIRSCHHORN: عظیم. 966 00:48:02,520 --> 00:48:04,338 اور میں نے آخر میں کیا شامل کرنا چاہئے؟ 967 00:48:04,338 --> 00:48:05,210 >> LUCY: 0 واپس. 968 00:48:05,210 --> 00:48:05,570 >> JASON HIRSCHHORN: 0 واپس. 969 00:48:05,570 --> 00:48:06,820 میں ہے؟ 970 00:48:06,820 --> 00:48:10,560 971 00:48:10,560 --> 00:48:12,590 صرف ایک سوال. 972 00:48:12,590 --> 00:48:14,957 ہم واپسی 0 شامل کرنے کے لئے ہے؟ 973 00:48:14,957 --> 00:48:16,240 >> ایک سے زیادہ طالب علموں: نمبر 974 00:48:16,240 --> 00:48:16,430 >> JASON HIRSCHHORN: نمبر 975 00:48:16,430 --> 00:48:18,090 مین خود کار طریقے سے کرتا ہے آپ کو ختم کرنے کے لئے ملتا ہے. 976 00:48:18,090 --> 00:48:20,580 لیکن میں اس کے لئے اچھا لگتا ہے واضح طور پر اس میں شامل ہیں. 977 00:48:20,580 --> 00:48:23,860 ہم دیگر آرہے ہیں خاص طور پر جب پروگرام کے دوران چیزیں. 978 00:48:23,860 --> 00:48:24,810 ٹھیک ہے. 979 00:48:24,810 --> 00:48:26,230 یہ ہم یاد کر رہے ہیں کیا ہے - 980 00:48:26,230 --> 00:48:28,520 کیا ہے؟ 981 00:48:28,520 --> 00:48:31,630 جو کچھ کے بارے میں سوچ کر سکتے ہیں - 982 00:48:31,630 --> 00:48:35,240 کے کچھ احساس ہے کیا ہوا ہے میں وہاں جا سکتا ہے؟ 983 00:48:35,240 --> 00:48:37,350 یہ صرف کچھ pseudocode میں ہے یہاں تک کہ اگر زبان کی طرح؟ 984 00:48:37,350 --> 00:48:41,330 >> ہم واقعی کیا ہیں - کیا ہم جب تک جانے کے لئے چاہتے ہیں؟ 985 00:48:41,330 --> 00:48:41,980 جی ہاں، لسی. 986 00:48:41,980 --> 00:48:43,240 >> LUCY: فائل کے آخر میں. 987 00:48:43,240 --> 00:48:44,990 >> JASON HIRSCHHORN: فائل کے آخر میں. 988 00:48:44,990 --> 00:48:49,280 تو آپ کو فائل کے آخر کی طرف سے کیا مطلب ہے؟ 989 00:48:49,280 --> 00:48:50,955 >> LUCY: آپ تک پہنچنے کے بعد فائل کے آخر میں، کو روکنے کے. 990 00:48:50,955 --> 00:48:51,240 >> JASON HIRSCHHORN: ٹھیک ہے. 991 00:48:51,240 --> 00:48:53,460 تو ایک بار ہم فائل کے آخر تک پہنچنے کے. 992 00:48:53,460 --> 00:48:56,893 ہم پہنچ چکے ہیں جب ہم کیسے جانتے ہو فائل کے آخر؟ 993 00:48:56,893 --> 00:48:59,900 >> طالب علم 40: میں بفر لگتا ہے نل کرنے کے لئے مقرر کیا جائے گا. 994 00:48:59,900 --> 00:49:01,885 >> طالب علم 41: بفر اعلان کیا جاتا ہے لوپ کے اندر. 995 00:49:01,885 --> 00:49:03,670 >> JASON HIRSCHHORN: تو آپ کو لگتا ہے بفر نل کرنے کے لئے مقرر کیا جائے گا. 996 00:49:03,670 --> 00:49:05,850 کیوں شہوت انگیز null قائم کیا جائے بفر گے؟ 997 00:49:05,850 --> 00:49:10,420 >> طالب علم 40: جب آپ کو اس کی وجہ fread، آپ کو ڈال کرنے کی کوشش کر رہے ہیں 998 00:49:10,420 --> 00:49:13,528 بفر میں کچھ بھی نہیں. 999 00:49:13,528 --> 00:49:13,980 >> JASON HIRSCHHORN: ٹھیک ہے. 1000 00:49:13,980 --> 00:49:15,550 تو آپ fread سوچ رہے ہیں - 1001 00:49:15,550 --> 00:49:19,000 ہم کے اختتام تک پہنچ گئے جب فائل، کیا fread کیا جا رہا ہے؟ 1002 00:49:19,000 --> 00:49:21,230 میں نے اس سوال کے جواب میں ہے ہم باہر کے اعداد و شمار کے لئے ہے. 1003 00:49:21,230 --> 00:49:21,960 fread کیا کرتا ہے؟ 1004 00:49:21,960 --> 00:49:25,640 یہ بفر میں نل ڈال دیا، یا ہے یہ کچھ کرتا ہے؟ 1005 00:49:25,640 --> 00:49:27,510 ہم کس طرح یہ کیا کرتا ہے کے اعداد و شمار کر سکتے ہیں؟ 1006 00:49:27,510 --> 00:49:28,190 >> طالب علم 42: انسان. 1007 00:49:28,190 --> 00:49:28,810 >> JASON HIRSCHHORN: آدمی. 1008 00:49:28,810 --> 00:49:32,280 تو یہاں دیکھو. 1009 00:49:32,280 --> 00:49:34,000 قیمت واپس. 1010 00:49:34,000 --> 00:49:39,620 کامیابی، fread پر اور واپس fwrite پڑھ یا لکھا اشیاء کی تعداد. 1011 00:49:39,620 --> 00:49:43,700 یہ تعداد بائٹس کی تعداد کے برابر ہے 1 سائز ہے صرف اس وقت جب میں منتقل کر دیا. 1012 00:49:43,700 --> 00:49:47,780 ایک خرابی اس وقت ہوتی ہے، یا کے آخر تو فائل تک پہنچ جاتا ہے، کی واپسی قیمت ہے 1013 00:49:47,780 --> 00:49:51,490 مختصر آئٹم شمار یا 0. 1014 00:49:51,490 --> 00:49:57,860 >> تو ہمارے مقاصد کے لئے، تو fread تک پہنچ جاتا ہے فائل کے آخر میں، اور سے پڑھتا ہے 1015 00:49:57,860 --> 00:50:02,100 فائل کے آخر، چھوڑ دیا کچھ بھی نہیں ہے پڑھنے کے لئے، کیا اس کو واپس جا رہا ہے؟ 1016 00:50:02,100 --> 00:50:03,290 >> طالب علم 43: زیرو؟ 1017 00:50:03,290 --> 00:50:04,540 >> JASON HIRSCHHORN: کیا؟ 1018 00:50:04,540 --> 00:50:05,300 >> طالب علم 43: زیرو؟ 1019 00:50:05,300 --> 00:50:05,690 >> JASON HIRSCHHORN: صفر. 1020 00:50:05,690 --> 00:50:06,940 یہ صفر واپس جا رہا ہے. 1021 00:50:06,940 --> 00:50:09,360 1022 00:50:09,360 --> 00:50:13,010 تو ہم نے کر لیا ہے کہ fread، جانتے فائل کے آخر تک پہنچ گئی، جا رہا ہے 1023 00:50:13,010 --> 00:50:13,690 صفر واپس کرنے کے لئے. 1024 00:50:13,690 --> 00:50:17,460 کس طرح ہم نے اپنے فائدہ کے لئے اس کا استعمال کر سکتے ہیں؟ 1025 00:50:17,460 --> 00:50:21,733 >> AVI: آپ باہر ایک متغیر کا اعلان کر سکتے ہیں چیک بلایا لوپ کے. 1026 00:50:21,733 --> 00:50:27,040 چیک برابر ہیں - 1027 00:50:27,040 --> 00:50:28,190 اب کے لئے - ایک. 1028 00:50:28,190 --> 00:50:28,920 >> JASON HIRSCHHORN: ٹھیک ہے. 1029 00:50:28,920 --> 00:50:38,050 >> AVI: اور پھر آپ کو ایک اگر ڈال کر سکتے ہیں حق fread کہہ کر بیان تو 1030 00:50:38,050 --> 00:50:42,600 fread صفر کے برابر ہے - 1031 00:50:42,600 --> 00:50:43,850 کوئی. 1032 00:50:43,850 --> 00:50:46,002 1033 00:50:46,002 --> 00:50:47,252 >> JASON HIRSCHHORN: کون بذریعہ Avi مدد کر سکتے ہیں؟ 1034 00:50:47,252 --> 00:50:49,690 1035 00:50:49,690 --> 00:50:52,410 >> AVI: قیمت کیا ہے fread کی ​​طرف سے واپس لوٹ آئے؟ 1036 00:50:52,410 --> 00:50:54,060 >> JASON HIRSCHHORN: ہم صرف میں چلے گئے. 1037 00:50:54,060 --> 00:50:55,450 >> AVI: آپ کو یہ کس طرح کی نمائندگی کرتے ہیں؟ 1038 00:50:55,450 --> 00:50:57,190 >> JASON HIRSCHHORN: تو یہ واپس - چلو یہاں دیکھو - یہ ایک واپسی 1039 00:50:57,190 --> 00:50:59,340 بنیادی طور پر ہے جو size_t، ایک عددی. 1040 00:50:59,340 --> 00:51:02,240 1041 00:51:02,240 --> 00:51:03,410 تو یہ ایک عددی واپسی. 1042 00:51:03,410 --> 00:51:05,160 اور ہمارے معاملے میں، یہ 1 یا 0 واپسی - 1043 00:51:05,160 --> 00:51:08,760 1 یہ ایک بات پڑھا ہے - ایک بائٹ، 0 ہم آخر تک پہنچ گئی ہے تو. 1044 00:51:08,760 --> 00:51:13,560 1045 00:51:13,560 --> 00:51:16,450 تو fread ہیں - 1046 00:51:16,450 --> 00:51:16,855 جی ہاں؟ 1047 00:51:16,855 --> 00:51:20,330 >> طالب علم 45: آپ کو صرف مکمل نہیں ڈال سکتے ہیں میں fread (بفر، 1، 1، ایس آر سی) 1048 00:51:20,330 --> 00:51:21,660 جبکہ لوپ؟ 1049 00:51:21,660 --> 00:51:26,510 >> JASON HIRSCHHORN: تو اگر آپ کی تجویز وہاں میں یہ کر؟ 1050 00:51:26,510 --> 00:51:27,600 >> [INTERPOSING آوازیں] 1051 00:51:27,600 --> 00:51:29,520 >> JASON HIRSCHHORN: رکو. 1052 00:51:29,520 --> 00:51:30,885 تو ہم نے اس کی نجات دلانے رہے ہیں. 1053 00:51:30,885 --> 00:51:33,300 تو آپ ڈال کی تجویز پیش کر رہے ہیں fread وہاں میں؟ 1054 00:51:33,300 --> 00:51:35,457 کیا ہم بھی منتقل کرنا چاہئے اگر آپ ایسا کرنا چاہتے ہیں؟ 1055 00:51:35,457 --> 00:51:36,740 >> طالب علم 45: باہر بفر. 1056 00:51:36,740 --> 00:51:38,110 >> JASON HIRSCHHORN: ہمیں چاہئے یہاں بھی اس سے باہر منتقل. 1057 00:51:38,110 --> 00:51:41,700 >> طالب علم 45: لیکن کرتا ہے مسلسل آگے منتقل؟ 1058 00:51:41,700 --> 00:51:42,950 >> [INTERPOSING آوازیں] 1059 00:51:42,950 --> 00:51:46,540 1060 00:51:46,540 --> 00:51:47,470 >> JASON HIRSCHHORN: ٹھیک ہے. 1061 00:51:47,470 --> 00:51:50,570 تو اس Okshar کی تجویز پیش کی ہے. 1062 00:51:50,570 --> 00:51:51,930 ہم اپنے بفر بنانے کے. 1063 00:51:51,930 --> 00:51:57,020 ہم وقت fread، تو ہم fwrite. 1064 00:51:57,020 --> 00:51:59,760 اس پر خیالات؟ 1065 00:51:59,760 --> 00:52:04,050 >> طالب علم 46: میرا سوال صرف، گے یہ اصل میں کمانڈ fread پھانسی؟ 1066 00:52:04,050 --> 00:52:06,175 >> JASON HIRSCHHORN: بڑا سوال. 1067 00:52:06,175 --> 00:52:11,050 آپ کو ایک تقریب کال ڈال رہے ہیں جب ایک شرط کے اندر، کہ کرتا ہے 1068 00:52:11,050 --> 00:52:12,300 تقریب کال پھانسی؟ 1069 00:52:12,300 --> 00:52:15,760 1070 00:52:15,760 --> 00:52:17,770 ہم نے اس کی مثالیں دیکھا ہے. 1071 00:52:17,770 --> 00:52:24,900 1072 00:52:24,900 --> 00:52:25,660 ٹھیک ہے نا؟ 1073 00:52:25,660 --> 00:52:26,125 >> طالب علم 46: ٹھیک ہے. 1074 00:52:26,125 --> 00:52:26,590 جی ہاں. 1075 00:52:26,590 --> 00:52:30,140 تو اس پر عمل کرتا ہے. 1076 00:52:30,140 --> 00:52:31,790 >> JASON HIRSCHHORN: ہم چیزوں کو دیکھا ہے اس سے پہلے، ہم نے جہاں کی طرح 1077 00:52:31,790 --> 00:52:33,550 ایک شرط کے اندر تقریب کال. 1078 00:52:33,550 --> 00:52:35,540 اس تقریب کی کال پر عمل کرتا ہے؟ 1079 00:52:35,540 --> 00:52:36,350 جی ہاں. 1080 00:52:36,350 --> 00:52:37,410 تو جواب ہاں میں ہے. 1081 00:52:37,410 --> 00:52:41,010 اس فنکشن کال پر عمل کیا جائے گا. 1082 00:52:41,010 --> 00:52:42,418 لیکن پھر، کہ ہم کیا چاہتے ہیں؟ 1083 00:52:42,418 --> 00:52:49,250 1084 00:52:49,250 --> 00:52:52,204 >> ہم اعداد و شمار کر سکتے ایک طریقہ کیا ہے ہم چاہتے ہیں باہر تو کیا ہوگا؟ 1085 00:52:52,204 --> 00:52:53,470 >> ایک سے زیادہ طالب علموں: اسے چلائیں؟ 1086 00:52:53,470 --> 00:52:54,460 >> JASON HIRSCHHORN: ہم اسے چلانے کر سکتے ہیں. 1087 00:52:54,460 --> 00:52:57,500 ہم ایسا لیکن اس سے پہلے، ہم کر سکتے بھی اس کے ذریعے وجہ. 1088 00:52:57,500 --> 00:52:57,920 تو - 1089 00:52:57,920 --> 00:53:01,920 ہم میں سے ایک بائٹ کا کہنا ہے کہ ہماری ہم یہاں مل جائے گا، فائل، 1090 00:53:01,920 --> 00:53:02,660 ہم اس کوڈ کو مل جائے گا. 1091 00:53:02,660 --> 00:53:03,620 یہ چلے گا. 1092 00:53:03,620 --> 00:53:07,780 fread ایک بائٹ واپس جائے گا اور یہ بفر میں سٹور. 1093 00:53:07,780 --> 00:53:11,290 اور یہ، 1 کا اندازہ کریں گے حق، کے بعد انہوں نے 1 واپس. 1094 00:53:11,290 --> 00:53:12,640 >> جبکہ 1. 1095 00:53:12,640 --> 00:53:15,325 کہ اندر کوڈ کا مطلب جبکہ لوپ پر عمل کرے گا؟ 1096 00:53:15,325 --> 00:53:15,453 >> طالب علم 47: جی ہاں. 1097 00:53:15,453 --> 00:53:16,040 یہ سچ ہے. 1098 00:53:16,040 --> 00:53:16,290 >> JASON HIRSCHHORN: جی ہاں. 1099 00:53:16,290 --> 00:53:17,490 1 سچ ہے. 1100 00:53:17,490 --> 00:53:18,240 یہ 0 نہیں ہے. 1101 00:53:18,240 --> 00:53:20,360 تو یہاں کے اندر کوڈ پر عمل کیا جائے گا. 1102 00:53:20,360 --> 00:53:22,300 تو ہم نے اس لکھیں گے. 1103 00:53:22,300 --> 00:53:25,340 ہم اس کو واپس منتقل کریں گے لائن ایک بار پھر. 1104 00:53:25,340 --> 00:53:26,850 اب ہم ہے - 1105 00:53:26,850 --> 00:53:28,550 ہم اپنی فائل کے آخر میں ہیں. 1106 00:53:28,550 --> 00:53:30,980 ہم اپنی فائل کے آخر سے پڑھا، ہم صرف اس میں ایک بائٹ تھا کیونکہ. 1107 00:53:30,980 --> 00:53:34,270 >> Fread 0، دکانوں واپس بفر میں کچھ. 1108 00:53:34,270 --> 00:53:35,890 میں ایمانداری سے نہیں جانتے یہ بفر میں ذخیرہ. 1109 00:53:35,890 --> 00:53:38,380 ہم شاید نظر کر سکتے ہیں یہ کیا کرتا ہے کو دیکھنے کے لئے. 1110 00:53:38,380 --> 00:53:40,130 میں ایمانداری سے نہیں جانتے کہ. 1111 00:53:40,130 --> 00:53:43,090 ہم کیا پرواہ ہے، جو نہیں جانتے یہ بفر میں ذخیرہ؟ 1112 00:53:43,090 --> 00:53:44,010 لیکن یہ 0 واپس کرتا ہے. 1113 00:53:44,010 --> 00:53:45,440 اور 0 پر عمل کرتے ہوئے گا؟ 1114 00:53:45,440 --> 00:53:49,950 1115 00:53:49,950 --> 00:53:51,180 >> 0 پھانسی نہیں کرے گا. 1116 00:53:51,180 --> 00:53:54,030 تو پھر ہم یہاں نیچے منتقل کریں گے. 1117 00:53:54,030 --> 00:53:58,870 تو ہاتھ کے ایک شو حاصل یہ تو ہم کو چلانے کے، یا ہم تو چاہئے کوڈ آن ہے 1118 00:53:58,870 --> 00:54:00,140 پہلی تبدیلیاں کرنا چاہئے. 1119 00:54:00,140 --> 00:54:02,180 آپ کو لگتا ہے تو - اگر آپ کو ووٹ ڈالنے کے لئے ہے. 1120 00:54:02,180 --> 00:54:06,885 آپ کو ہم اس کوڈ کو چلانے چاہئے تو کے طور پر ہے، آپ کے ہاتھ کو بلند کریں. 1121 00:54:06,885 --> 00:54:12,440 1122 00:54:12,440 --> 00:54:13,400 >> ٹھیک ہے. 1123 00:54:13,400 --> 00:54:14,315 ایک ہے - 1124 00:54:14,315 --> 00:54:17,260 آپ سے ایک سوال، تشویش ہے؟ 1125 00:54:17,260 --> 00:54:18,080 جی ہاں. 1126 00:54:18,080 --> 00:54:21,240 >> طالب علم 48: ہم بفر اقدام کے بعد لوپ سے باہر، ہم کرتے ہیں 1127 00:54:21,240 --> 00:54:22,670 یہ MALLOC ہے؟ 1128 00:54:22,670 --> 00:54:23,310 >> JASON HIRSCHHORN: بڑا سوال. 1129 00:54:23,310 --> 00:54:26,670 ہم سے باہر بفر اقدام کے بعد لوپ، ہم اس MALLOC ہے؟ 1130 00:54:26,670 --> 00:54:28,400 یہ ایک دائرہ کار سوال ہے. 1131 00:54:28,400 --> 00:54:32,130 ہم باہر بفر ابتدا تو اس لوپ کے، یہ موجود گی 1132 00:54:32,130 --> 00:54:33,534 لوپ کے اندر؟ 1133 00:54:33,534 --> 00:54:35,230 >> ایک سے زیادہ طالب علموں: جی ہاں. 1134 00:54:35,230 --> 00:54:35,580 >> JASON HIRSCHHORN: جی ہاں. 1135 00:54:35,580 --> 00:54:40,100 اس کی گنجائش، لوپ کے اندر کا احاطہ کرتا ہے اور، واقعی، کچھ اندر اس کے نیچے 1136 00:54:40,100 --> 00:54:42,460 جن میں اس کوڈ کو، کے یہاں اندر چیزیں. 1137 00:54:42,460 --> 00:54:43,930 تو ہم اس MALLOC کی ضرورت نہیں ہے. 1138 00:54:43,930 --> 00:54:47,766 یہ ایک مقامی متغیر ہے، اور اس کا دائرہ کار اب بھی لوپ میں شامل ہیں. 1139 00:54:47,766 --> 00:54:49,540 >> طالب علم 49: ہم اس کو آزاد کرنے کی ضرورت ہے؟ 1140 00:54:49,540 --> 00:54:51,770 >> JASON HIRSCHHORN: ہم کیا کرتے ہیں مفت بفر کی ضرورت ہے؟ 1141 00:54:51,770 --> 00:54:53,860 >> طالب علم 49: جی ہاں، ہم malloc کا نہیں ہے. 1142 00:54:53,860 --> 00:54:55,750 >> JASON HIRSCHHORN: ہم کیا کرتے ہیں مفت بفر کی ضرورت ہے؟ 1143 00:54:55,750 --> 00:54:57,160 ہم ایسا نہیں کرتے. 1144 00:54:57,160 --> 00:55:01,280 ایک بار پھر، یہ ایک مقامی متغیر ہے، تو ہم اس کو آزاد کرنے کی ضرورت نہیں ہے. 1145 00:55:01,280 --> 00:55:02,170 ٹھیک ہے. 1146 00:55:02,170 --> 00:55:03,480 کیا ہوتا ہے دیکھتے ہیں. 1147 00:55:03,480 --> 00:55:17,290 1148 00:55:17,290 --> 00:55:18,220 تو یہ غیر ابتدا شدہ ہے. 1149 00:55:18,220 --> 00:55:20,830 یہی کچھ تھا کہ مارکس پہلے کی تجویز پیش کی. 1150 00:55:20,830 --> 00:55:25,340 تو ہم اس کی غلطی، متغیر بفر ہے یہاں استعمال کیا جاتا ہے جب غیر ابتدا شدہ ہے. 1151 00:55:25,340 --> 00:55:26,590 >> ہم اس کو کس طرح ٹھیک کر سکتے ہیں؟ 1152 00:55:26,590 --> 00:55:29,460 1153 00:55:29,460 --> 00:55:30,960 >> طالب علم 50: یہ MALLOC؟ 1154 00:55:30,960 --> 00:55:31,770 >> طالب علم 51: نل برابر ہے؟ 1155 00:55:31,770 --> 00:55:33,000 >> طالب علم 52: بفر نل کے برابر کہہ دو. 1156 00:55:33,000 --> 00:55:34,250 >> JASON HIRSCHHORN: ٹھیک ہے. 1157 00:55:34,250 --> 00:55:40,040 1158 00:55:40,040 --> 00:55:40,770 اچھا لگتا ہے. 1159 00:55:40,770 --> 00:55:42,410 اب ہم اس کے ہیں. 1160 00:55:42,410 --> 00:55:45,630 کی کاپی کرنے کی کوشش کریں کچھ پیدا کرتے ہیں. 1161 00:55:45,630 --> 00:56:08,990 1162 00:56:08,990 --> 00:56:10,490 تو ہم اپنے ٹیکسٹ فائل ہے. 1163 00:56:10,490 --> 00:56:11,740 ہم کس طرح اس پروگرام کو چلانے کر سکتے ہیں؟ 1164 00:56:11,740 --> 00:56:14,140 1165 00:56:14,140 --> 00:56:15,472 جی ہاں. 1166 00:56:15,472 --> 00:56:22,230 >> طالب علم 53: آپ کو نقطہ کر سکتے ہیں CP، test.txt سلیش. 1167 00:56:22,230 --> 00:56:25,140 اور پھر آپ کو ایک اور فائل کا نام کر سکتے ہیں اس میں محفوظ ہو جائے گا. 1168 00:56:25,140 --> 00:56:25,510 >> JASON HIRSCHHORN: ٹھیک ہے. 1169 00:56:25,510 --> 00:56:27,380 ہم اس out.txt فون کروں گا. 1170 00:56:27,380 --> 00:56:28,630 ڈاؤن لوڈ، اتارنا؟ 1171 00:56:28,630 --> 00:56:31,700 1172 00:56:31,700 --> 00:56:34,320 SEG غلطی. 1173 00:56:34,320 --> 00:56:35,570 SEG غلطی پر خیالات؟ 1174 00:56:35,570 --> 00:56:40,900 1175 00:56:40,900 --> 00:56:41,390 یہ بہت اچھا ہے. 1176 00:56:41,390 --> 00:56:45,040 ہم کس طرح باہر تلاش کر سکتے ہیں جہاں SEG غلطی ہے؟ 1177 00:56:45,040 --> 00:56:45,680 کیا ہے؟ 1178 00:56:45,680 --> 00:56:45,990 >> طالب علم 54: GDB. 1179 00:56:45,990 --> 00:56:47,240 >> JASON HIRSCHHORN: GDB. 1180 00:56:47,240 --> 00:56:51,400 1181 00:56:51,400 --> 00:56:55,300 ہم، GDB ڈاٹ سلیش لکھ کر GDB چلانے ہمارے پروگرام کا نام. 1182 00:56:55,300 --> 00:56:57,020 کوئی کمانڈ لائن کے دلائل. 1183 00:56:57,020 --> 00:56:59,570 ہم نے ایک قائم کرنے کے لئے جا رہے ہیں اہم میں توڑ مقام. 1184 00:56:59,570 --> 00:57:02,190 میں GDB کو شروع کرنا چاہتے ہیں تو، میں کیا کروں؟ 1185 00:57:02,190 --> 00:57:02,730 >> طالب علم 55: آر 1186 00:57:02,730 --> 00:57:08,910 >> اس کے بعد آر اور کیا: جیسن HIRSCHHORN؟ 1187 00:57:08,910 --> 00:57:09,400 >> طالب علم 55: دلائل؟ 1188 00:57:09,400 --> 00:57:10,650 >> JASON HIRSCHHORN: پھر کمانڈ لائن کے دلائل. 1189 00:57:10,650 --> 00:57:15,890 1190 00:57:15,890 --> 00:57:17,120 کے ذریعے چلنے دو. 1191 00:57:17,120 --> 00:57:19,090 (ن) صرف لائن کی طرف سے مجھ سے لائن لے جا رہا ہے. 1192 00:57:19,090 --> 00:57:21,450 میں جا رہا ہوں، جب تک میں اپنے SEG غلطی حاصل. 1193 00:57:21,450 --> 00:57:22,700 میری SEG غلطی نہیں ہے. 1194 00:57:22,700 --> 00:57:24,960 1195 00:57:24,960 --> 00:57:27,875 fread کی ​​وجہ سے ایسا لگتا ہے میری SEG غلطی. 1196 00:57:27,875 --> 00:57:30,570 1197 00:57:30,570 --> 00:57:32,770 میں، fread میری SEG غلطی کی وجہ سے جانتے ہیں کہ تھا کیونکہ 1198 00:57:32,770 --> 00:57:34,950 لائن ہم صرف پھانسی. 1199 00:57:34,950 --> 00:57:36,530 >> کیا گیا تھا اور صرف ایک ہی چیز اس لائن میں ہو رہا - 1200 00:57:36,530 --> 00:57:37,520 دو چیزیں ہو رہا تھا. 1201 00:57:37,520 --> 00:57:40,610 Fread جا رہا تھا، اور پھر ہم تھے کچھ دیر کی جانچ پڑتال کر رہے ہیں. 1202 00:57:40,610 --> 00:57:44,820 میں شرط لگاتا ہوں کے لئے تیار ہوں جبکہ جانچ پڑتال میری SEG غلطی کی وجہ سے نہیں کیا گیا تھا. 1203 00:57:44,820 --> 00:57:46,950 سب سے زیادہ امکان، fread تھا میری SEG غلطی کی وجہ سے. 1204 00:57:46,950 --> 00:57:49,260 میں نے بھی یہاں کچھ، memcopy دیکھ. 1205 00:57:49,260 --> 00:57:50,500 >> یاد داشت کی کاپی. 1206 00:57:50,500 --> 00:57:53,820 کی طرف سے میموری میں منتقل کی طرح لگتا ہے دیگر ایک مقام. 1207 00:57:53,820 --> 00:57:56,890 ہو گا کہ کچھ کی طرح لگتا ہے fread میں، شاید کچھ یاد 1208 00:57:56,890 --> 00:57:58,910 یہاں یہاں سے آگے بڑھ رہے ہیں. 1209 00:57:58,910 --> 00:58:01,740 1210 00:58:01,740 --> 00:58:03,860 پھر اس کے ذریعے جانے دو. 1211 00:58:03,860 --> 00:58:06,900 میں اسے کس طرح سے شروع کرتے ہیں اور اسے دوبارہ چلانے کے؟ 1212 00:58:06,900 --> 00:58:08,092 جی ہاں. 1213 00:58:08,092 --> 00:58:15,140 >> طالب علم 56: اگر آپ کو ڈال کرنے کی ضرورت بفر سے پہلے ایک ایمپرسینڈ؟ 1214 00:58:15,140 --> 00:58:17,800 >> JASON HIRSCHHORN: تو اس سے پہلے ایمپرسینڈ بفر مجھے پتہ کے دے گی 1215 00:58:17,800 --> 00:58:22,330 * ایک چار ہے جس میں بفر،. 1216 00:58:22,330 --> 00:58:25,250 یہ ایک وقت کے ذریعے چلاتے ہیں. 1217 00:58:25,250 --> 00:58:28,248 میں کس طرح ایک بار اس کے ذریعے چلائی جاتی ہیں؟ 1218 00:58:28,248 --> 00:58:29,210 >> طالب علم 57: کر سکتے ہیں آپ کو صرف دوبارہ چلائیں ٹائپ؟ 1219 00:58:29,210 --> 00:58:32,050 >> JASON HIRSCHHORN: بس دوبارہ چلائیں ٹائپ. 1220 00:58:32,050 --> 00:58:33,415 تو ہم نہیں کر رہے ہیں اس لائن کو پھانسی. 1221 00:58:33,415 --> 00:58:36,250 1222 00:58:36,250 --> 00:58:39,240 تو بفر null پوائنٹر ہے. 1223 00:58:39,240 --> 00:58:40,490 صحیح؟ 1224 00:58:40,490 --> 00:58:45,870 1225 00:58:45,870 --> 00:58:47,060 اس کی طرف اشارہ ہے - چلو دیکھتے ہیں. 1226 00:58:47,060 --> 00:58:48,500 اگر ہم ہماری - 1227 00:58:48,500 --> 00:58:50,430 اس کا ایک فوری تصویر کو اپنی طرف متوجہ. 1228 00:58:50,430 --> 00:58:53,500 تو سب دیکھ سکتے ہیں میں یہاں لکھنا؟ 1229 00:58:53,500 --> 00:59:02,890 >> تو اسٹیک میں، ہم نے ایک مقامی ہے متغیر اور یہ بفر کہا جاتا ہے، اور 1230 00:59:02,890 --> 00:59:08,230 یہ ایک چار پوائنٹر ہے. 1231 00:59:08,230 --> 00:59:10,325 کیا پتہ اس چار ہے؟ 1232 00:59:10,325 --> 00:59:12,550 >> طالب علم 58: 0x0. 1233 00:59:12,550 --> 00:59:13,400 >> JASON HIRSCHHORN: ٹھیک ہے. 1234 00:59:13,400 --> 00:59:14,200 کہ یہ ہے کیا ہے. 1235 00:59:14,200 --> 00:59:17,600 یہاں، بفر کے اندر، 0x0 محفوظ کیا جاتا ہے. 1236 00:59:17,600 --> 00:59:20,480 یہی وجہ ہے کہ ہم نے کیا ہے - ہم اب ہے سیٹ اپ. 1237 00:59:20,480 --> 00:59:27,540 تو اس لائن، fread، کچھ رکھتا ہے جہاں ذریعہ سے؟ 1238 00:59:27,540 --> 00:59:30,560 اس باکس یا اس کے خانے میں؟ 1239 00:59:30,560 --> 00:59:31,060 کون سا باکس؟ 1240 00:59:31,060 --> 00:59:33,290 باکس یا دائیں باکس چھوڑ دیا ہے؟ 1241 00:59:33,290 --> 00:59:34,750 یہ درست باکس. 1242 00:59:34,750 --> 00:59:38,440 >> یہ پوائنٹر مندرجہ ذیل ہے، اور یہاں میں رکھتا ہے. 1243 00:59:38,440 --> 00:59:42,620 ہم کوشش کرتے ہیں اور رابطے میموری جب مقام 0، ہم کیا ملتا ہے؟ 1244 00:59:42,620 --> 00:59:45,050 ایک انقطاع غلطی. 1245 00:59:45,050 --> 00:59:46,550 کہ ہم اب ہے غلطی ہے. 1246 00:59:46,550 --> 00:59:46,970 جی ہاں. 1247 00:59:46,970 --> 00:59:48,410 >> طالب علم 59: اگر آپ کو نہیں ہے سٹار بفر ڈال؟ 1248 00:59:48,410 --> 00:59:49,180 نہیں یا؟ 1249 00:59:49,180 --> 00:59:50,050 fread کے لیے؟ 1250 00:59:50,050 --> 00:59:51,450 >> JASON HIRSCHHORN: تو fread ایک پوائنٹر لیتا ہے. 1251 00:59:51,450 --> 00:59:54,920 1252 00:59:54,920 --> 00:59:55,900 تو یہ بفر میں گزر جاتا ہے. 1253 00:59:55,900 --> 00:59:58,980 اور پھر یہ کریں گے ڈی حوالہ کہیں fread کے اندر. 1254 00:59:58,980 --> 01:00:00,700 لیکن پھر ہم نے دیکھا، یہ ایک پوائنٹر لیتا ہے. 1255 01:00:00,700 --> 01:00:02,560 ہم نے اس کے سٹار بفر منتقل کرنے کی ضرورت نہیں ہے. 1256 01:00:02,560 --> 01:00:05,350 یہ گزر جائے گا یہ یہاں ہے جو کچھ بھی. 1257 01:00:05,350 --> 01:00:07,980 اور یہ کہ شاید ہم ایک غلطی دے گی ہم اسے ڈی حوالہ کر رہے ہیں. 1258 01:00:07,980 --> 01:00:08,150 >> ٹھیک ہے نا؟ 1259 01:00:08,150 --> 01:00:10,690 ہم اس پوائنٹر ریفرنس ڈی جب، جب ہم اس مقام تک رسائی حاصل کرنے کی کوشش کریں، 1260 01:00:10,690 --> 01:00:13,140 ہم نے ایک غلطی ہو رہی ہے - ہمارے انقطاع غلطی. 1261 01:00:13,140 --> 01:00:15,800 تو - 1262 01:00:15,800 --> 01:00:16,690 افوہ. 1263 01:00:16,690 --> 01:00:19,090 ہم GDB کے باہر چھوڑ جا رہے ہیں. 1264 01:00:19,090 --> 01:00:20,160 ہماری لائن - 1265 01:00:20,160 --> 01:00:22,990 ہمارا مسئلہ - حق ہے یہاں اس لائن پر. 1266 01:00:22,990 --> 01:00:26,410 اور یہ ایک مسئلہ ہے کیونکہ اس لائن کی. 1267 01:00:26,410 --> 01:00:31,780 >> ہم کس طرح ایک باکس بنا سکتے ہیں fread میں قابل رسائی ہے. 1268 01:00:31,780 --> 01:00:31,980 ٹھیک ہے نا؟ 1269 01:00:31,980 --> 01:00:35,190 ہم ایک ہے کہ ایک باکس تخلیق کرنے کی ضرورت بائٹ بڑی، ایک چار کا سائز. 1270 01:00:35,190 --> 01:00:38,590 لیکن ہم اس باکس قابل رسائی ہو جائے کرنے کی ضرورت ہے اس تقریب executes ہے جب. 1271 01:00:38,590 --> 01:00:39,390 تو جہاں - 1272 01:00:39,390 --> 01:00:39,640 جی ہاں. 1273 01:00:39,640 --> 01:00:40,440 کوئی خیال ہے؟ 1274 01:00:40,440 --> 01:00:43,615 >> طالب علم 60: بس کے طور پر مقرر کسی بھی بے ترتیب کردار. 1275 01:00:43,615 --> 01:00:49,150 1276 01:00:49,150 --> 01:00:51,640 صرف چار بفر برابر کرنا کردار. 1277 01:00:51,640 --> 01:00:53,795 اور اس کے بعد، آپ کو وہاں بفر ہے جب - 1278 01:00:53,795 --> 01:00:54,110 >> JASON HIRSCHHORN: انتظار. 1279 01:00:54,110 --> 01:00:55,110 چار بفر؟ 1280 01:00:55,110 --> 01:00:55,880 تو کوئی سٹار؟ 1281 01:00:55,880 --> 01:00:56,390 >> طالب علم 60: جی ہاں. 1282 01:00:56,390 --> 01:00:58,560 سٹار باہر لے جاؤ. 1283 01:00:58,560 --> 01:01:00,690 ایک بے ترتیب کردار کے برابر ہے. 1284 01:01:00,690 --> 01:01:01,460 >> JASON HIRSCHHORN: ٹھیک ہے. 1285 01:01:01,460 --> 01:01:02,420 تو مجھے ایک دو. 1286 01:01:02,420 --> 01:01:03,170 >> طالب علم 60: کی طرح یا کچھ اور. 1287 01:01:03,170 --> 01:01:06,160 اور پھر آپ کو بفر ہے جب آمدید، آپ کو ایک استعمال کرتے ہیں - 1288 01:01:06,160 --> 01:01:06,420 >> طالب علم 61: سٹار؟ 1289 01:01:06,420 --> 01:01:07,650 ارے نہیں، ایمپرسینڈ. 1290 01:01:07,650 --> 01:01:09,000 >> طالب علم 60: ایمپرسینڈ استعمال. 1291 01:01:09,000 --> 01:01:09,470 >> JASON HIRSCHHORN: ٹھیک ہے. 1292 01:01:09,470 --> 01:01:11,320 اور کیا fwrite کے بارے میں؟ 1293 01:01:11,320 --> 01:01:14,150 >> طالب علم 60: دوبارہ ایمپرسینڈ استعمال. 1294 01:01:14,150 --> 01:01:14,320 >> JASON HIRSCHHORN: ٹھیک ہے. 1295 01:01:14,320 --> 01:01:20,970 تو آپ کے خیال ہے، ہم ایک چار بنانے اور تو اس میں کچھ ڈال دیا، اور 1296 01:01:20,970 --> 01:01:22,612 کہ چار لکھیں. 1297 01:01:22,612 --> 01:01:23,760 >> طالب علم 60: جی ہاں. 1298 01:01:23,760 --> 01:01:25,916 >> JASON HIRSCHHORN کیا لوگوں کا خیال ہے؟ 1299 01:01:25,916 --> 01:01:27,770 >> طالب علم 62: یہ convoluted ہے. 1300 01:01:27,770 --> 01:01:28,460 >> JASON HIRSCHHORN: ٹھیک ہے. 1301 01:01:28,460 --> 01:01:29,760 یہ اپنی طرف متوجہ. 1302 01:01:29,760 --> 01:01:35,720 اس وقت تو میں نے اس کو اپنی طرف متوجہ کرنے کے لئے جا رہا ہوں ہم تو یہاں اسٹیک پر ریڈ، اور 1303 01:01:35,720 --> 01:01:36,410 پڑے گا - 1304 01:01:36,410 --> 01:01:36,822 ؤہ! 1305 01:01:36,822 --> 01:01:38,060 معذرت. 1306 01:01:38,060 --> 01:01:45,930 اس وقت تو ہم کچھ ہے بفر، اور اس کے اسٹیک پر ہے. 1307 01:01:45,930 --> 01:01:48,430 صحیح؟ 1308 01:01:48,430 --> 01:01:51,520 اور ہم نے ابتدائی طور پر، یہ ایک میں بچت کر رہے ہیں. 1309 01:01:51,520 --> 01:01:53,830 >> پھر ہم fread پر ہماری کال ہے. 1310 01:01:53,830 --> 01:02:01,300 کیا fread اس سے ایک بائٹ لیتا ہے کرتا ہے ہماری فائل اور کہیں کہتے ہیں. 1311 01:02:01,300 --> 01:02:04,570 یہ جو کچھ بھی میں رکھتا ہے بات کی طرف اشارہ ہے. 1312 01:02:04,570 --> 01:02:09,130 ٹھیک ہے، ہم اس کا پتہ تھا اس سے پہلے - 1313 01:02:09,130 --> 01:02:10,250 0x0. 1314 01:02:10,250 --> 01:02:13,349 اب ہم کیا پتہ ہے؟ 1315 01:02:13,349 --> 01:02:14,650 >> طالب علم 63: جو بھی پتہ بفر ہے. 1316 01:02:14,650 --> 01:02:15,970 >> JASON HIRSCHHORN: جو بھی پتہ بفر ہے. 1317 01:02:15,970 --> 01:02:22,370 شاید یہ ہونے جا رہا ہے اس طرح کچھ. 1318 01:02:22,370 --> 01:02:26,950 شاید ایک B کے ساتھ شروع کرنے کے لئے جا رہا ہے اور پھر ایک F، اور چھ دیگر ہے 1319 01:02:26,950 --> 01:02:27,970 شش اعشاری ہندسے. 1320 01:02:27,970 --> 01:02:28,480 کوئی فرق نہیں پڑتا. 1321 01:02:28,480 --> 01:02:29,470 کچھ پتہ. 1322 01:02:29,470 --> 01:02:31,410 اور ہم اندر اس ایڈریس گزر رہے ہیں 1323 01:02:31,410 --> 01:02:34,790 >> اور ہم نے اپنے ایک ڈال کرنے جا رہے ہیں اس پتے پر بائٹ بات. 1324 01:02:34,790 --> 01:02:38,470 تو ہم اپنے ایک ڈال کرنے جا رہے ہیں بائٹ بات یہاں اندر. 1325 01:02:38,470 --> 01:02:40,800 اور پھر ہم سے لکھنے کے لئے جا رہے ہیں اندر یہاں کبھی کیا ہے. 1326 01:02:40,800 --> 01:02:43,425 1327 01:02:43,425 --> 01:02:45,380 کسی کو کوئی سوال ہے اس کے بارے میں؟ 1328 01:02:45,380 --> 01:02:50,990 1329 01:02:50,990 --> 01:02:54,690 کون اس کوڈ کام کریں گے سوچتا ہے؟ 1330 01:02:54,690 --> 01:02:56,020 >> آپ کے خیال میں اگر آپ کے ہاتھ اٹھانے اس کوڈ سے کام کریں گے. 1331 01:02:56,020 --> 01:02:57,270 آپ کو ایک موقف لینے کے لئے ہے. 1332 01:02:57,270 --> 01:03:00,670 1333 01:03:00,670 --> 01:03:02,500 اور کون اس کوڈ کام نہیں کرے گا سوچتا ہے؟ 1334 01:03:02,500 --> 01:03:04,610 اپنے ہاتھ اٹھانے کی. 1335 01:03:04,610 --> 01:03:06,750 اور سب ہونا چاہئے ان کے ہاتھ اٹھانے. 1336 01:03:06,750 --> 01:03:07,670 ٹھیک ہے. 1337 01:03:07,670 --> 01:03:09,390 مائیکل، آپ کہاں کھڑے ہیں؟ 1338 01:03:09,390 --> 01:03:10,680 >> مائیکل: میں فیصلہ نہیں کر سکتے. 1339 01:03:10,680 --> 01:03:12,070 قسم کے وسط میں. 1340 01:03:12,070 --> 01:03:12,736 >> JASON HIRSCHHORN: تم درمیان میں. 1341 01:03:12,736 --> 01:03:13,092 ایک کو منتخب کریں. 1342 01:03:13,092 --> 01:03:14,400 >> مائیکل: میں ایمان ہو گا اور یہ کام کریں گے. 1343 01:03:14,400 --> 01:03:14,660 >> JASON HIRSCHHORN: ٹھیک ہے. 1344 01:03:14,660 --> 01:03:16,047 آپ ایمان ہے اور یہ کام کرتا ہے کہیں گے؟ 1345 01:03:16,047 --> 01:03:26,490 1346 01:03:26,490 --> 01:03:27,020 کیا ہوا؟ 1347 01:03:27,020 --> 01:03:28,270 >> [INTERPOSING آوازیں] 1348 01:03:28,270 --> 01:03:35,170 1349 01:03:35,170 --> 01:03:35,950 >> JASON HIRSCHHORN: کوئی SEG غلطی. 1350 01:03:35,950 --> 01:03:40,320 ہم کس طرح دیکھنے کے لئے چیک کر سکتے ہیں دو چیزوں کے برابر ہیں؟ 1351 01:03:40,320 --> 01:03:42,060 دو فائلوں کو برابر ہیں. 1352 01:03:42,060 --> 01:03:43,300 >> طالب علم 64: مختلف نسخوں کا. 1353 01:03:43,300 --> 01:03:45,490 >> JASON HIRSCHHORN: مختلف نسخوں کا. 1354 01:03:45,490 --> 01:03:51,630 کے درمیان اختلافات کے مختلف نسخوں کا چیک اسے واپس دو فائلوں، اور اگر 1355 01:03:51,630 --> 01:03:52,890 کچھ بھی نہیں، وہ ایک جیسی ہیں. 1356 01:03:52,890 --> 01:03:59,030 ہم کو کھولنے اور اگر، ہم اپنی فائل حاصل. 1357 01:03:59,030 --> 01:04:00,490 تو اس کا صحیح حل تھا. 1358 01:04:00,490 --> 01:04:01,780 کی اس پر ایک بار واپس دیکھو. 1359 01:04:01,780 --> 01:04:04,080 ہم اصل میں بھی نہیں کیا اس کی ابتدا کرنے کی ضرورت ہے. 1360 01:04:04,080 --> 01:04:05,520 >> شاید یہ تھوڑا سا نظر آئے گا آپ کو ڈال نہیں کیا تو کلینر 1361 01:04:05,520 --> 01:04:07,680 وہاں میں بے ترتیب کچھ. 1362 01:04:07,680 --> 01:04:13,070 نقطہ ہونے کی وجہ سے، آپ کو پیدا کرنے کے لئے کی ضرورت ہے سے کچھ ذخیرہ کرنے کے لئے کچھ جگہ 1363 01:04:13,070 --> 01:04:15,530 fread اور کچھ لینا fwrite سے باہر. 1364 01:04:15,530 --> 01:04:18,400 اور یہ بات ایک مقامی یا تو ہو اسٹیک پر متغیر - آپ 1365 01:04:18,400 --> 01:04:19,890 کچھ جگہ malloc'd کر سکتا. 1366 01:04:19,890 --> 01:04:23,030 >> تو ہم اصل میں کر سکتے ہیں لکھا یہاں malloc کے، اور 1367 01:04:23,030 --> 01:04:25,420 یہ کام کیا ہے گا. 1368 01:04:25,420 --> 01:04:28,660 اور پھر ہم کو محفوظ کرنے کے کیا گیا ہے کہیں ڈھیر پر ہماری چیزیں. 1369 01:04:28,660 --> 01:04:31,940 لیکن یہ، شاید، اصل میں ہے سب سے زیادہ خوبصورت حل. 1370 01:04:31,940 --> 01:04:34,490 صرف اسٹیک پر کچھ جگہ بنانے کے ان چیزوں کو جانے کے لئے. 1371 01:04:34,490 --> 01:04:37,690 1372 01:04:37,690 --> 01:04:38,990 >> میں نے دو دیگر تبصرے ہوگا. 1373 01:04:38,990 --> 01:04:44,650 آپ کو اس میں موڑ لے، اور کرنے کے لئے تھے اس کے بعد میرے تبصرے، اس پر بنائے جاتے ہیں 1374 01:04:44,650 --> 01:04:47,400 مندرجہ ذیل ہو گی. 1375 01:04:47,400 --> 01:04:54,300 یہ 1 یہاں ہے، مجھے دیکھو، جادو کی تعداد کی طرح. 1376 01:04:54,300 --> 01:04:56,860 یہ 1، fread کی ​​شرائط میں، سمجھ میں آتا ہے. 1377 01:04:56,860 --> 01:04:59,580 کہ چیزوں کی تعداد ہے پڑھنے یا لکھنے کے لئے. 1378 01:04:59,580 --> 01:05:03,740 >> لیکن یہاں ایک ہونا چاہئے شاید کچھ اور ہو. 1379 01:05:03,740 --> 01:05:05,180 تو ایک حل کیا ہے؟ 1380 01:05:05,180 --> 01:05:06,545 >> طالب علم 65: بائٹ کا سائز. 1381 01:05:06,545 --> 01:05:10,100 1382 01:05:10,100 --> 01:05:11,080 >> JASON HIRSCHHORN: کی طرح؟ 1383 01:05:11,080 --> 01:05:13,130 >> طالب علم 65: چار کا سائز. 1384 01:05:13,130 --> 01:05:13,820 >> JASON HIRSCHHORN: چار کا سائز. 1385 01:05:13,820 --> 01:05:15,290 جی ہاں، بائٹ ایک قسم نہیں ہے. 1386 01:05:15,290 --> 01:05:16,320 چار کام کے سائز تو. 1387 01:05:16,320 --> 01:05:30,270 ہم کے سب سے اوپر، کر سکتے ہیں ہمارے کوڈ، # کہ وضاحت کی گئی ہے. 1388 01:05:30,270 --> 01:05:33,410 کچھ بائٹ اور کہا یہ واقعی ایک چار ہے. 1389 01:05:33,410 --> 01:05:37,675 اصل میں، اس سے بھی بہتر طریقہ یہ ہو سکتا ہے - 1390 01:05:37,675 --> 01:05:39,391 uint. 1391 01:05:39,391 --> 01:05:40,780 کوئی بھی ہے کہ پتہ ہے کیا؟ 1392 01:05:40,780 --> 01:05:44,388 1393 01:05:44,388 --> 01:05:44,840 >> معذرت. 1394 01:05:44,840 --> 01:05:46,090 میں نے پیچھے کی طرف ہے. 1395 01:05:46,090 --> 01:05:51,620 1396 01:05:51,620 --> 01:05:52,200 نہیں، رکو. 1397 01:05:52,200 --> 01:05:53,450 یہ کس طرح ہے؟ 1398 01:05:53,450 --> 01:05:58,071 1399 01:05:58,071 --> 01:05:59,660 کوئی بھی ہے کہ پتہ ہے کیا؟ 1400 01:05:59,660 --> 01:06:00,950 جی ہاں. 1401 01:06:00,950 --> 01:06:05,650 >> طالب علم 67: معیاری مدد کرنا نظام کی چیزوں میں ہے کہ 1402 01:06:05,650 --> 01:06:08,760 ہے - اہستاکشرت integers کے کی طرح 8 بائٹس ہے؟ 1403 01:06:08,760 --> 01:06:11,785 >> JASON HIRSCHHORN: ہے بالکل صحیح. 1404 01:06:11,785 --> 01:06:14,310 مختلف مشینوں پر، ایک چار کا سائز - 1405 01:06:14,310 --> 01:06:15,180 عام طور پر ایک چار. 1406 01:06:15,180 --> 01:06:16,100 حروف عام طور پر ایک بائٹ ہیں. 1407 01:06:16,100 --> 01:06:19,590 لیکن دوسرے اعداد و شمار اقسام کے سائز کے ہیں ایک 32 بٹ مشین پر مختلف سائز 1408 01:06:19,590 --> 01:06:21,370 ایک 64 بٹ مشین کے مقابلے میں. 1409 01:06:21,370 --> 01:06:25,180 ایک uint8_t ہمیشہ 8 بٹس ہے - 1410 01:06:25,180 --> 01:06:27,210 ہمیشہ ایک بائٹ. 1411 01:06:27,210 --> 01:06:29,580 >> اور میں شامل کرنے کے لئے کی ضرورت ہے معیاری INT ہیڈر فائل. 1412 01:06:29,580 --> 01:06:35,040 تو اب، شاید یہ ہوتا ہے اس کوڈ لکھنے کے لئے سب سے بہتر طریقہ. 1413 01:06:35,040 --> 01:06:40,160 1414 01:06:40,160 --> 01:06:41,450 تو میں جادو کی تعداد سے چھٹکارا حاصل. 1415 01:06:41,450 --> 01:06:44,690 اور میں بھی ایک زیادہ منطقی ہے بفر کی قسم. 1416 01:06:44,690 --> 01:06:49,450 یہ ایک بائٹ ہے، صرف ایک چار نہیں ہے جس میں ہم اس کے ہونے کی امید ہے. 1417 01:06:49,450 --> 01:06:53,400 >> اور یہاں، ہم اصل میں ہے تھوڑا سا زیادہ مضبوط ہو گیا. 1418 01:06:53,400 --> 01:06:55,190 ہم، جو ایک چار بلا نہیں کر رہے ہیں - 1419 01:06:55,190 --> 01:06:58,630 ہو سکتا ہے، کون جانتا ہے - ایک مختلف ہو سکتا ہے مختلف مشینوں پر سائز. 1420 01:06:58,630 --> 01:07:02,025 ہم اصل میں یہ بالکل ہے کہہ رہے ہو ایک بائٹ، ہمیشہ، کوئی بات نہیں کیا. 1421 01:07:02,025 --> 01:07:05,810 ہم یہاں دیکھتے ہیں اور ہم CP بنانے کے. 1422 01:07:05,810 --> 01:07:08,340 اہ اوہ. 1423 01:07:08,340 --> 01:07:09,590 کیا ہوا؟ 1424 01:07:09,590 --> 01:07:14,470 1425 01:07:14,470 --> 01:07:16,170 >> طالب علم 68: یہ تبدیل ہو سکتا ہے. 1426 01:07:16,170 --> 01:07:17,880 >> JASON HIRSCHHORN: کیا؟ 1427 01:07:17,880 --> 01:07:19,130 >> طالب علم 69: یہ کیا ہے؟ 1428 01:07:19,130 --> 01:07:21,940 1429 01:07:21,940 --> 01:07:25,080 >> طالب علم 70: آپ نے ایسا نہیں کیا ایک قسم کے طور پر اس کی وضاحت. 1430 01:07:25,080 --> 01:07:28,684 >> طالب علم 71: لیکن یہ کرنا چاہئے معیار میں وضاحت کی جائے. 1431 01:07:28,684 --> 01:07:29,934 >> طالب علم 72: کیا ہو رہا ہے؟ 1432 01:07:29,934 --> 01:07:37,660 1433 01:07:37,660 --> 01:07:40,210 >> طالب علم 73: کی وضاحت کرنا چاہئے تمام بڑے حروف ہو؟ 1434 01:07:40,210 --> 01:07:41,370 >> JASON HIRSCHHORN: تو یہ نہیں ہے # وضاحت. 1435 01:07:41,370 --> 01:07:45,490 اصل میں، اس معاملے میں، میں ہوں typedef استعمال کرنے کے لئے جا رہا ہے. 1436 01:07:45,490 --> 01:07:48,590 ہم کے طور پر اس کا استعمال کرتے ہوئے کر رہے ہیں ایک جگہ میں ایک قسم. 1437 01:07:48,590 --> 01:07:51,990 تو اس صورت میں، ہم اصل میں چاہتے ہیں کے لئے ہم ایک نئی قسم چھپائی رہے ہیں کی طرح typedef 1438 01:07:51,990 --> 01:07:54,490 بائٹ، اور اس، بنیادی طور پر، ہے. 1439 01:07:54,490 --> 01:07:56,590 یہ # وضاحت سے تھوڑا سا مختلف ہے. 1440 01:07:56,590 --> 01:08:02,740 >> اور اب، ہمارے کوڈ بالکل کام کرتا ہے. 1441 01:08:02,740 --> 01:08:05,230 تو، ایک بار پھر، # کچھ لیتا ہے کی وضاحت، ہر جگہ اس کی جگہ لے لیتا ہے 1442 01:08:05,230 --> 01:08:06,780 دوسری بات یہ ہے کے ساتھ. 1443 01:08:06,780 --> 01:08:07,920 یہ صرف ایک میکرو ہے - 1444 01:08:07,920 --> 01:08:09,420 آشلپی جادو کی تعداد سے چھٹکارا حاصل کرنے. 1445 01:08:09,420 --> 01:08:11,360 لیکن اس معاملے میں، کیونکہ ہم ہیں ایک قسم کے طور پر اس کا استعمال کرتے ہوئے - 1446 01:08:11,360 --> 01:08:12,180 یہیں - 1447 01:08:12,180 --> 01:08:19,880 جو کام کرنے کے لئے ترتیب میں، ہمیں ضرورت ہے جو کچھ بھی ہے بائٹ typedef پر. 1448 01:08:19,880 --> 01:08:21,840 >> اور ہم یہاں اس کی وضاحت کر رہے ہیں. 1449 01:08:21,840 --> 01:08:24,750 یہ اصل میں ہے، ایک struct نہیں ہے صرف ایک اہستاکشرت عدد صحیح. 1450 01:08:24,750 --> 01:08:27,680 یہ ایک بائٹ طویل ہے. 1451 01:08:27,680 --> 01:08:31,910 اس کوڈ سے آن لائن دستیاب ہو جائے گا، اور تم ٹھیک اب یہ ہونا چاہئے. 1452 01:08:31,910 --> 01:08:33,830 >> تو ہم ہے - 1453 01:08:33,830 --> 01:08:34,250 کامل - 1454 01:08:34,250 --> 01:08:41,359 13 منٹ جانے کے لئے چھوڑ دیا پر مسئلہ سیٹ 5. 1455 01:08:41,359 --> 01:08:44,270 میں، ایک دوسرے کے ساتھ copy.c کے ذریعے چلنا چاہتے ہیں اور پھر ہم مختصر طور پر بات کریں گے 1456 01:08:44,270 --> 01:08:47,120 دوسرے حصوں کے بارے میں مسئلہ کے مقرر. 1457 01:08:47,120 --> 01:08:48,899 تو مجھے copy.c. ھیںچو 1458 01:08:48,899 --> 01:09:03,930 1459 01:09:03,930 --> 01:09:08,810 اور ٹھنڈی چیز ہم اصل میں ہے، ہے پہلے سے ہی اس کوڈ کا ایک بہت لکھا. 1460 01:09:08,810 --> 01:09:11,180 >> ہم لفظی لکھا کوڈ صرف میں تھا جب یہاں سے باہر آئے 1461 01:09:11,180 --> 01:09:13,120 اپنے یہ لکھ. 1462 01:09:13,120 --> 01:09:16,990 لیکن یہ، copy.c ہے فاؤنڈیشن کے فارم کے پہلے دو حصوں کے لئے 1463 01:09:16,990 --> 01:09:22,340 whodunit.c، کے لئے مقرر کیا مسئلہ ہے جس میں آپ کو لکھنے کے لئے کی ضرورت ہے، اور resize.c. 1464 01:09:22,340 --> 01:09:27,050 تیسرے اور آخری ہے جس Recover.c، مسئلہ سیٹ کا حصہ نہیں ہے، 1465 01:09:27,050 --> 01:09:29,529 اس فائل کے دور کی بنیاد پر. 1466 01:09:29,529 --> 01:09:32,200 >> آپ اس فائل کو لکھنے کے لئے کی ضرورت کے لئے جا رہے ہیں، ہم آپ کو اس کے لئے ایک سانچے دے 1467 01:09:32,200 --> 01:09:34,620 فائل، لیکن یہ کچھ بھی نہیں ہے copy.c. کے ساتھ کیا 1468 01:09:34,620 --> 01:09:38,675 لیکن copy.c کے لئے بنیاد ہے پہلے دو حصوں، ہم جا رہے ہیں 1469 01:09:38,675 --> 01:09:42,000 اب اس کے ذریعے چل، تو آپ کو کرنے کی ضرورت یہ کیا کرتا ہے کا ایک اچھا احساس. 1470 01:09:42,000 --> 01:09:43,640 >> اور تبصرے اس میں سے کچھ دے. 1471 01:09:43,640 --> 01:09:45,120 ہم نے پہلے ہی اس میں سے کچھ لکھا ہے. 1472 01:09:45,120 --> 01:09:49,220 سب سے پہلے، ہم اس بات کا یقین کر رہے ہیں ہم تین دلائل حاصل. 1473 01:09:49,220 --> 01:09:50,560 اگلا، ہم فائل کے نام کو یاد کر رہے ہیں. 1474 01:09:50,560 --> 01:09:52,960 تو ہم اس قدم چھوڑا جب ہم اپنی بات کوڈت - 1475 01:09:52,960 --> 01:09:54,700 جب ہماری CP. 1476 01:09:54,700 --> 01:09:56,750 لیکن یہاں، وہ کر رہے ہیں تھوڑا سا کلینر یہ. 1477 01:09:56,750 --> 01:09:59,350 >> وہ اس بات کو یقینی بنانے کے لئے کی جانچ پڑتال کر رہے ہیں میں دونوں فائلوں کو، اچھے ہیں 1478 01:09:59,350 --> 01:10:00,450 ان کو کھولنے کے علاوہ. 1479 01:10:00,450 --> 01:10:04,760 ہم صرف اب اس کوڈ میں لکھا تھا، لہذا میں ہوں اس کوڈ پر رہنے کے لئے نہیں جا رہا. 1480 01:10:04,760 --> 01:10:09,670 اگلا لئے مخصوص ہے کہ کچھ چیزیں ہے ہم استعمال کر رہے ہیں فائلوں کی قسم جس کے 1481 01:10:09,670 --> 01:10:12,240 بٹ نقشہ فائلوں ہیں. 1482 01:10:12,240 --> 01:10:15,660 بٹ نقشہ فائلوں کچھ میٹا ڈیٹا ہے ان کے ساتھ منسلک. 1483 01:10:15,660 --> 01:10:20,190 >> تو بائٹس کے پہلے دو فائل کے بارے میں آپ کو بتا. 1484 01:10:20,190 --> 01:10:23,460 وہ رنگ نہیں ہیں اس تصویر میں پکسل. 1485 01:10:23,460 --> 01:10:25,120 وہ فائل کے بارے میں آپ کو بتا. 1486 01:10:25,120 --> 01:10:28,220 اور آپ کو مسئلہ سیٹ کے ذریعے پڑھنے کے تو، آپ کو بہت زیادہ معلومات پڑے گا 1487 01:10:28,220 --> 01:10:33,100 میٹا ڈیٹا ڈھانچے کی کیا اقسام bitmaps کے ساتھ شامل ہیں. 1488 01:10:33,100 --> 01:10:39,350 >> ہم اس سے پہلے کیوں لیکن یہ ہے یہاں اس کوڈ - کے مقرر. 1489 01:10:39,350 --> 01:10:42,490 ہم میٹا ڈیٹا کو پڑھنے کے ہیں - 1490 01:10:42,490 --> 01:10:45,800 میٹا ڈیٹا کے دو ٹکڑے - فائل ہیڈر اور معلومات ہیڈر. 1491 01:10:45,800 --> 01:10:51,030 اور ہم اس کے کچھ حصوں کی جانچ پڑتال کر رہے ہیں اس بات کا یقین ہے کہ یہ ایک حقیقی بٹ نقشہ فائل ہے بنانے کے 1492 01:10:51,030 --> 01:10:52,420 جاری رکھنے سے پہلے. 1493 01:10:52,420 --> 01:10:55,470 >> اور پھر، ان تفصیلات ہم ہیں اب میں جانے کی ضرورت نہیں ہے. 1494 01:10:55,470 --> 01:10:57,720 آپ کا مسئلہ سیٹ کے ذریعے پڑھتے ہیں، آپ ان کو سمجھ جائے گا. 1495 01:10:57,720 --> 01:11:01,370 لمبی کہانی مختصر، یہ صرف کہہ رہے ہیں، یہ ایک بٹ نقشہ فائل ہے، اور 1496 01:11:01,370 --> 01:11:02,810 تصدیق کی ہے کہ. 1497 01:11:02,810 --> 01:11:05,180 >> اگلا، ہم ان لوگوں کو لکھ رہے ہیں باہر فائل. 1498 01:11:05,180 --> 01:11:05,660 ہم یہاں دیکھتے ہیں کہ. 1499 01:11:05,660 --> 01:11:06,910 ہم باہر پوائنٹر لکھ رہے ہیں. 1500 01:11:06,910 --> 01:11:09,260 1501 01:11:09,260 --> 01:11:11,320 اگلا، ہم بھرتی کا تعین کر رہے ہیں. 1502 01:11:11,320 --> 01:11:15,240 تو پھر، کے طور پر خاصیت کے ساتھ ہے ایک بٹ نقشہ فائل، کچھ لائنز شامل ہیں 1503 01:11:15,240 --> 01:11:16,840 آخر میں بھرتی. 1504 01:11:16,840 --> 01:11:19,000 اور آپ کو مسئلہ سیٹ کے ذریعے پڑھنے کے تو، آپ کی بھرتی کے بارے میں مزید معلومات حاصل کریں گے. 1505 01:11:19,000 --> 01:11:22,330 اس بھرتی کے تلاش کرنے کے لئے فارمولہ ہے. 1506 01:11:22,330 --> 01:11:23,610 >> یاد رکھنا ضروری - 1507 01:11:23,610 --> 01:11:29,720 آپ کو ایک بٹ نقشہ کے سائز کو تبدیل جب ، بھرتی تبدیلیاں. 1508 01:11:29,720 --> 01:11:31,970 آپ کو ایک کے سائز کو تبدیل کرتے ، بھرتی تبدیلیاں. 1509 01:11:31,970 --> 01:11:34,310 یہ ہونے جا رہا کبھی نہیں 3 سے زیادہ - 1510 01:11:34,310 --> 01:11:36,510 یہ، 3 کے ذریعے جامع 0 ہو جائے گا. 1511 01:11:36,510 --> 01:11:38,930 لیکن آپ کا سائز تبدیل کرتے ہیں کچھ، بھرتی تبدیلیاں. 1512 01:11:38,930 --> 01:11:47,100 >> میں صرف یہ ہے کہ قطار میں ایک پکسل ہے تو، میں ، بھرتی کے تین بائٹس کی ضرورت ہے 1513 01:11:47,100 --> 01:11:51,190 ہر صف چار ملٹی ہونا ضروری ہے ایک بٹ نقشہ فائل میں طویل بائٹس. 1514 01:11:51,190 --> 01:11:56,120 لیکن میں نے اس کو دوگنا اگر، ایک پکسل کی طرف سے جانے کے لئے دو پکسل، جن میں سے ہر، 1515 01:11:56,120 --> 01:11:59,510 کا کہنا ہے کہ، ایک بائٹ، تو مجھے اس کی ضرورت ہے بنانے کے لئے بھرتی کے دو بائٹس 1516 01:11:59,510 --> 01:12:00,970 چار کہ برابر. 1517 01:12:00,970 --> 01:12:04,200 >> تو میں کچھ کا سائز تبدیل کرتے ہیں، میں رقم کو تبدیل کرنے کی ضرورت ہے 1518 01:12:04,200 --> 01:12:06,551 بھرتی کے میں ہے. 1519 01:12:06,551 --> 01:12:08,100 کہ سب کو احساس ہے؟ 1520 01:12:08,100 --> 01:12:12,020 1521 01:12:12,020 --> 01:12:18,720 اگلا، ہم ہر صف پر iterate، یا تمام قطاروں کے ذریعے. 1522 01:12:18,720 --> 01:12:21,400 اور پھر ہم کے ذریعے iterate ہر قطار میں ہر کالم. 1523 01:12:21,400 --> 01:12:25,330 ہم جیسے اس بٹ نقشہ علاج کر رہے ہیں ایک گرڈ، جیسا کہ ہم علاج کیا ہے 1524 01:12:25,330 --> 01:12:26,490 15 میں بورڈ. 1525 01:12:26,490 --> 01:12:29,200 >> جیسا کہ ہم اینٹ کا علاج کیا جب ہم سکرین پر ان کی چھپی. 1526 01:12:29,200 --> 01:12:31,350 قطار اور کالموں کی ایک گرڈ. 1527 01:12:31,350 --> 01:12:32,350 اس کے بعد - ہم نے اس کو دیکھا. 1528 01:12:32,350 --> 01:12:33,840 ہم اصل میں صرف اس کوڈت. 1529 01:12:33,840 --> 01:12:35,780 ہم نے کچھ عارضی اسٹوریج پیدا. 1530 01:12:35,780 --> 01:12:38,710 اس کے بعد ہم وہاں میں پڑھا، اور ہم اس کے لکھنے. 1531 01:12:38,710 --> 01:12:42,680 یہ ہم صرف کیا بالکل وہی جو ہے. 1532 01:12:42,680 --> 01:12:46,760 >> میں نے کہا کہ اگلا، کیونکہ ہر سطر کچھ بھرتی میں ختم ہو جاتی ہے، ہم 1533 01:12:46,760 --> 01:12:48,260 کہ بھرتی پر ہوں - 1534 01:12:48,260 --> 01:12:51,000 پرانے بھرتی. 1535 01:12:51,000 --> 01:12:52,630 اور پھر ہم اسے واپس شامل. 1536 01:12:52,630 --> 01:12:55,140 اس صورت میں، ہم پیدا کر رہے ہیں ایک ہی عین مطابق فائل. 1537 01:12:55,140 --> 01:12:56,180 ہم صرف اس کے کاپی کر رہے ہیں. 1538 01:12:56,180 --> 01:12:57,700 تو اس لائن قسم کی پاگل ہے. 1539 01:12:57,700 --> 01:12:59,660 ہم کر سکتے لفظی صرف اندر بھرتی ڈال 1540 01:12:59,660 --> 01:13:04,290 >> لیکن آپ کو فائل کے سائز کو تبدیل کرتے ہیں، اگر آپ اب بھی اس لائن کرنا چاہتے ہیں؟ 1541 01:13:04,290 --> 01:13:08,510 1542 01:13:08,510 --> 01:13:11,560 ہم نے ایک فائل کے سائز کو تبدیل اگر ایسا ہے تو، ہم اب بھی پر کرنا چاہتے ہیں 1543 01:13:11,560 --> 01:13:12,810 پرانے بھرتی پر؟ 1544 01:13:12,810 --> 01:13:15,170 1545 01:13:15,170 --> 01:13:15,970 >> طالب علم 74: جی ہاں. 1546 01:13:15,970 --> 01:13:17,090 >> JASON HIRSCHHORN: تو ہم کرتے ہیں. 1547 01:13:17,090 --> 01:13:19,290 یہ، ایک بار پھر، سودے کیونکہ سورس فائل کے ساتھ. 1548 01:13:19,290 --> 01:13:21,570 ہم بھرتی کے بارے میں پرواہ نہیں ہے سورس فائل سے. 1549 01:13:21,570 --> 01:13:23,410 ہم اگلی لائن پر جانا چاہتے ہیں. 1550 01:13:23,410 --> 01:13:28,850 لیکن ہم صرف واپس نہیں ڈال بھرتی کے پرانے رقم. 1551 01:13:28,850 --> 01:13:31,540 ہم واپس ڈال کرنے کی ضرورت بھرتی کی نئی رقم. 1552 01:13:31,540 --> 01:13:35,810 >> تو ہم نے ایک کے سائز کو تبدیل کر رہے ہیں جب فائل، ہم اب بھی پر چھوڑ کرنا چاہتے ہیں، 1553 01:13:35,810 --> 01:13:38,270 پرانے فائل میں بھرتی - کیا ہم سے پڑھ رہے ہیں. 1554 01:13:38,270 --> 01:13:40,370 لیکن ہم لکھ رہے ہیں کیا ہے، ہم جا رہے ہیں کچھ مختلف واپس ڈال کرنے کی ضرورت پر 1555 01:13:40,370 --> 01:13:41,890 بھرتی کی تعداد ہے ہم سے مقرر ہے. 1556 01:13:41,890 --> 01:13:42,780 جی ہاں. 1557 01:13:42,780 --> 01:13:44,550 >> طالب علم 75: ان دونوں کے حکم لائنوں کا حق، کوئی فرق نہیں پڑتا؟ 1558 01:13:44,550 --> 01:13:46,160 آپ ہینڈلنگ رہے ہیں مختلف فائلوں. 1559 01:13:46,160 --> 01:13:46,620 >> JASON HIRSCHHORN: بالکل. 1560 01:13:46,620 --> 01:13:48,220 یہ دو لائنوں کی ترتیب کوئی فرق نہیں پڑتا. 1561 01:13:48,220 --> 01:13:49,790 ہم اس لائن لکھنے. 1562 01:13:49,790 --> 01:13:51,430 یہ فائل کے لئے یہاں ہے ہم لکھ رہے ہیں. 1563 01:13:51,430 --> 01:13:54,370 یہ ضروری ہے، تو ہم حاصل بھرتی کی صحیح رقم. 1564 01:13:54,370 --> 01:13:57,560 اس میں فائل کے ساتھ نمٹنے کے لئے ہے. 1565 01:13:57,560 --> 01:13:58,560 ہم کو چھوڑ کرنا چاہتے ہیں، بھرتی کے دوران. 1566 01:13:58,560 --> 01:13:59,470 >> ہم پڑھنے کے لئے نہیں کرنا چاہتے - 1567 01:13:59,470 --> 01:14:01,500 ہم ایک وقت میں ایک بائٹ پڑھ رہے ہیں، تو ہم ان بھرتی بائٹس کی پرواہ نہیں کرتے. 1568 01:14:01,500 --> 01:14:04,070 ہم اگلی لائن پر منتقل کرنا چاہتے ہیں. 1569 01:14:04,070 --> 01:14:11,800 آخر میں لسی ہمارے لئے دی طرح، ہم فائلوں کو بند کرنے اور واپس 0. 1570 01:14:11,800 --> 01:14:13,890 تو اس copy.c. ہے 1571 01:14:13,890 --> 01:14:17,850 اور ہم اصل میں لکھا - ہم کے سب سے زیادہ خرچ بنیادی طور پر، یہ لکھ سیکشن. 1572 01:14:17,850 --> 01:14:18,740 >> آپ اس بنایا. 1573 01:14:18,740 --> 01:14:22,440 تو امید ہے کہ آپ ایک اچھا احساس ہے یہاں کیا ہو رہا ہے کے. 1574 01:14:22,440 --> 01:14:25,890 بڑا فرق، ایمانداری سے، صرف ہے کے ساتھ کرتا ہے کہ اس پہلے حصے 1575 01:14:25,890 --> 01:14:29,970 بٹ نقشہ فائلوں کی خصوصیات. 1576 01:14:29,970 --> 01:14:33,570 تو میں، میری اگلی سلائڈ کے طور پر ہے ہمیں کیا ضرورت ہے؟ 1577 01:14:33,570 --> 01:14:35,510 ٹھیک ہے، Whodunit کے بارے میں سوچنا. 1578 01:14:35,510 --> 01:14:38,080 >> اور کسی کے لئے کون ذریعے پڑھنے مسئلہ سیٹ، کیا ہم کرتے ہیں 1579 01:14:38,080 --> 01:14:41,410 Whodunit میں کرنے کی ضرورت ہے؟ 1580 01:14:41,410 --> 01:14:42,080 بس. 1581 01:14:42,080 --> 01:14:42,460 Aleja. 1582 01:14:42,460 --> 01:14:48,570 >> ALEJA: آپ حصہ لے سکتے ہیں ریڈ کرنا ہے کہ ہر پکسل کے. 1583 01:14:48,570 --> 01:14:49,730 اور پھر - 1584 01:14:49,730 --> 01:14:50,730 قسم کی؟ 1585 01:14:50,730 --> 01:14:51,860 >> JASON HIRSCHHORN: ٹھیک ہے. 1586 01:14:51,860 --> 01:14:54,460 تو ہر ایک کے حصے کے باہر لے ریڈ کرنا ہے کہ پکسل. 1587 01:14:54,460 --> 01:14:57,234 یہی وجہ ہے کہ اس کے تمام بند، لیکن نہیں ہے. 1588 01:14:57,234 --> 01:14:59,780 >> طالب علم 76: ٹھیک ہے، وہاں ہے ایسا کرنے کے لئے مختلف طریقوں سے. 1589 01:14:59,780 --> 01:14:59,870 >> JASON HIRSCHHORN: ٹھیک ہے. 1590 01:14:59,870 --> 01:15:03,070 مجھے ایک راستہ دے. 1591 01:15:03,070 --> 01:15:08,240 >> طالب علم 76: تمام سرخ باہر لے جاؤ، اور پھر زور نیلے اور سبز. 1592 01:15:08,240 --> 01:15:10,010 >> JASON HIRSCHHORN: ٹھیک ہے. 1593 01:15:10,010 --> 01:15:11,830 تو ان طریقوں دونوں دی - 1594 01:15:11,830 --> 01:15:15,210 ہم اسے ایک پکسل دے کی طرح، لگتا ہے یہ ایک، بلیو، سرخ اور سبز رنگ کی سطح ہے. 1595 01:15:15,210 --> 01:15:19,350 ہم رشتہ دار کی سطح کی تبدیل کرنا چاہتے ہیں منحصر ہے،، بلیو، سرخ اور سبز 1596 01:15:19,350 --> 01:15:20,740 کہ پکسل پر. 1597 01:15:20,740 --> 01:15:28,380 اس کوڈ میں ہم کو تبدیل کرنا چاہئے کہاں رشتہ دار، بلیو، سرخ اور سبز 1598 01:15:28,380 --> 01:15:29,720 ایک دیئے گئے پکسل کی سطح. 1599 01:15:29,720 --> 01:15:30,600 ہم نے اسے پڑھا ہے کے بعد - 1600 01:15:30,600 --> 01:15:32,520 ہم اسے لکھنے سے پہلے؟ 1601 01:15:32,520 --> 01:15:34,564 مجھے لائن نمبر دے دو. 1602 01:15:34,564 --> 01:15:35,950 >> ایک سے زیادہ طالب علموں: 83. 1603 01:15:35,950 --> 01:15:37,320 >> JASON HIRSCHHORN: 83. 1604 01:15:37,320 --> 01:15:38,570 تو یہیں پر. 1605 01:15:38,570 --> 01:15:40,830 1606 01:15:40,830 --> 01:15:45,710 Whodunit کے لئے، کوڈ آپ کو کرنے کی ضرورت ہے لکھنا ٹھیک ہے وہاں جانا چاہئے. 1607 01:15:45,710 --> 01:15:47,640 اور یہ کہ صرف کوڈ ہے آپ کو لکھنے کے لئے کی ضرورت ہے. 1608 01:15:47,640 --> 01:15:51,520 ہم نے سنا ہے کی طرح، تم سب کو کرنے کی ضرورت ہے، کیونکہ کرتے، ان کے رشتہ دار نیلے رنگ تبدیل 1609 01:15:51,520 --> 01:15:54,420 ہر پکسل سے سرخ، اور سبز سطح. 1610 01:15:54,420 --> 01:15:58,250 >> آپ اس میں پڑھا ہے، اور اب تم اسے باہر لکھنے کے لئے جا. 1611 01:15:58,250 --> 01:16:03,100 میں کس طرح حاصل کرتے ہیں - میں اس بات ہے تو یہاں، ٹرپل کہا جاتا ہے، اور اس کا ہے 1612 01:16:03,100 --> 01:16:04,570 RGBTRIPLE ٹائپ کریں - 1613 01:16:04,570 --> 01:16:08,650 ٹھیک ہے، ہم bmp.h میں دیکھا تو، RGBTRIPLE کیا ہے؟ 1614 01:16:08,650 --> 01:16:11,450 1615 01:16:11,450 --> 01:16:12,700 >> طالب علم 77: یہ ایک struct ہے. 1616 01:16:12,700 --> 01:16:17,440 1617 01:16:17,440 --> 01:16:18,900 >> JASON HIRSCHHORN: RGBTRIPLE ایک struct ہے. 1618 01:16:18,900 --> 01:16:22,330 ہم یہاں دیکھتے ہیں کہ. 1619 01:16:22,330 --> 01:16:26,600 اور اس میں، کا کہنا ہے کہ، تک رسائی حاصل کرنا چاہتا تھا struct کے ریڈ سطح، میں کس طرح کرتے ہیں 1620 01:16:26,600 --> 01:16:30,005 اس struct کے سرخ سطح تک رسائی حاصل؟ 1621 01:16:30,005 --> 01:16:37,280 >> [کلاس MURMURS] 1622 01:16:37,280 --> 01:16:38,530 >> طالب علم 78: RGBTRIPLE.rgbtred؟ 1623 01:16:38,530 --> 01:16:47,250 1624 01:16:47,250 --> 01:16:48,856 >> JASON HIRSCHHORN: یہ صحیح ہے؟ 1625 01:16:48,856 --> 01:16:53,040 >> طالب علم 79: یہ ٹرپل ہونا چاہئے بجائے RGBTRIPLE ڈاٹ کے نقطہ،؟ 1626 01:16:53,040 --> 01:16:54,120 >> JASON HIRSCHHORN: ٹرپل. 1627 01:16:54,120 --> 01:16:56,700 ٹرپل مقامی متغیر ہے، تو یہاں، یہاں کوئی اشارہ نہیں ہے. 1628 01:16:56,700 --> 01:16:58,400 تو ہم صرف ڈاٹ سنکیتن کا استعمال کرتے ہیں. 1629 01:16:58,400 --> 01:17:00,480 یہ میرے لال کی سطح دے گا. 1630 01:17:00,480 --> 01:17:06,180 میں اسے تبدیل کرنا چاہتے ہیں، میں صرف مقرر یہ مختلف کچھ کرنے کے برابر. 1631 01:17:06,180 --> 01:17:13,190 تو پھر، کوڈ کی اس لائن تک رسائی حاصل اس struct کے اندر متغیر، اور 1632 01:17:13,190 --> 01:17:15,070 ہم نے کچھ نیا کرنے کے لئے مقرر کر سکتے ہیں. 1633 01:17:15,070 --> 01:17:20,040 >> تو Whodunit کے لئے، ایک بار پھر، یہ، ہے جوہر میں، ہم کیا کرنے کی ضرورت ہے. 1634 01:17:20,040 --> 01:17:21,170 بہت آسان. 1635 01:17:21,170 --> 01:17:25,020 بس کچھ رشتہ دار کے درجے کو تبدیل، اور اس کوڈ جاتا ہے جہاں یہ ہے. 1636 01:17:25,020 --> 01:17:27,720 دوسری طرف، کا سائز تبدیل کریں، تھوڑا سا trickier ہے. 1637 01:17:27,720 --> 01:17:30,900 اصل میں، نیا سائز شاید ہے اس مسئلے کے trickiest حصہ مقرر کیا. 1638 01:17:30,900 --> 01:17:32,720 ہم نے اس پر جانے کے لئے تین منٹ ہیں. 1639 01:17:32,720 --> 01:17:34,910 >> لیکن پھر، ہم نے پہلے ہی لکھا ہے اس کوڈ سے سب سے زیادہ، تو ہم 1640 01:17:34,910 --> 01:17:36,500 بہت واقف ہونا چاہئے. 1641 01:17:36,500 --> 01:17:40,750 ہم میں کرنا چاہتے ہیں کچھ چیزیں کیا ہیں تم پر پڑھا ہے، کا سائز تبدیل کریں 1642 01:17:40,750 --> 01:17:43,470 مسئلہ سیٹ کی؟ 1643 01:17:43,470 --> 01:17:45,290 آپ کو مجھے دے دو، تو ہم ان کے بارے میں بات کر سکتے ہیں. 1644 01:17:45,290 --> 01:17:47,340 ہم کرنا چاہتے ہیں کچھ چیزیں کیا ہیں؟ 1645 01:17:47,340 --> 01:17:47,970 >> طالب علم 80: عمودی - 1646 01:17:47,970 --> 01:17:52,360 تو آپ کو، افقی طور پر اس کا سائز تبدیل کرنے کے لئے ہے لیکن عمودی طور پر کے ساتھ ساتھ اس کا سائز تبدیل کریں؟ 1647 01:17:52,360 --> 01:17:58,475 >> JASON HIRSCHHORN: تو ہم دے رہے ہیں تو ایک پکسل، اور ہم نے ایک کی طرف سے اس کا سائز تبدیل کرنے کے لئے چاہتے 1648 01:17:58,475 --> 01:18:03,460 دو عنصر، اب یہ کرنے کی ضرورت ہے افقی طور پر تبدیل اور تبدیل 1649 01:18:03,460 --> 01:18:05,220 عمودی طور پر. 1650 01:18:05,220 --> 01:18:06,640 احساس ہے کہ ہے؟ 1651 01:18:06,640 --> 01:18:07,060 جی ہاں. 1652 01:18:07,060 --> 01:18:09,300 تو وہ شاید سب سے بڑا چیلنج. 1653 01:18:09,300 --> 01:18:10,430 اور ہم نے ایک سیکنڈ میں اس کے بارے میں بات کریں گے. 1654 01:18:10,430 --> 01:18:11,065 جی ہاں. 1655 01:18:11,065 --> 01:18:15,270 >> طالب علم 81: میں نے اس کے بارے میں سوچا طریقہ آپ کو پرنٹ اسے باہر کی ضرورت کیا گیا تھا - 1656 01:18:15,270 --> 01:18:15,490 >> JASON HIRSCHHORN: انتظار. 1657 01:18:15,490 --> 01:18:17,580 تم نے کیا کیا ہمیں نہیں بتا. 1658 01:18:17,580 --> 01:18:20,620 ہم منطق میں بات کرنے کے لئے جا رہے ہیں. 1659 01:18:20,620 --> 01:18:21,870 >> طالب علم 81: ٹھیک ہے. 1660 01:18:21,870 --> 01:18:25,090 1661 01:18:25,090 --> 01:18:27,410 سوال کیا تھا؟ 1662 01:18:27,410 --> 01:18:28,892 >> JASON HIRSCHHORN: آپ کو صرف آپ کے ہاتھ اٹھایا. 1663 01:18:28,892 --> 01:18:31,600 کوئی سوال نہیں تھا. 1664 01:18:31,600 --> 01:18:32,520 مجھے اس کے سامنے پیش کرتے ہیں. 1665 01:18:32,520 --> 01:18:34,560 مجھے صرف اس مختصر بات چیت. 1666 01:18:34,560 --> 01:18:38,400 تو ہم ایک پکسل چاہتے ہیں دونوں افقی، اس کو دہرانے اور 1667 01:18:38,400 --> 01:18:39,360 عمودی طور پر. 1668 01:18:39,360 --> 01:18:48,920 تو مثالی طور پر کیا ہم یہاں کیا ہے، ہم ہمارے پکسل میں پڑھا، ہم اسے لکھ 1669 01:18:48,920 --> 01:18:51,690 وقت کی تاہم بہت سے. 1670 01:18:51,690 --> 01:18:54,720 >> لیکن اس وقت ہم، ہمارے یہاں چال ہے کیونکہ تو ہم پر جائیں کرنا چاہتے ہیں 1671 01:18:54,720 --> 01:18:57,660 اگلی لائن اور اس میں لکھنا اگلا سطر کے شروع. 1672 01:18:57,660 --> 01:19:02,960 تو ہم دونوں کی نقل تیار کرنا چاہتے ہیں تو افقی اور عمودی طور، کیا ہے 1673 01:19:02,960 --> 01:19:05,050 ایسا کرنے کے لئے ایک اچھا طریقہ - 1674 01:19:05,050 --> 01:19:06,780 اچھا، اگرچہ ایسا کرنے کے لئے؟ 1675 01:19:06,780 --> 01:19:11,950 تو ہم مسلسل حاصل کرنے کے لئے کی ضرورت نہیں ہے ہماری فائل کے ارد گرد چیزیں رکھنے کے لئے. 1676 01:19:11,950 --> 01:19:14,360 >> یہ سوال ہے نہیں کر سکتے ہیں احساس بنا دیا، لیکن مجھے لگتا ہے کہ ایک 1677 01:19:14,360 --> 01:19:15,800 اس کا جواب دینے میں مدد ملے گی. 1678 01:19:15,800 --> 01:19:17,210 >> طالب علم 82: ایک صف بنائیں؟ 1679 01:19:17,210 --> 01:19:20,090 >> JASON HIRSCHHORN: تو لگتا ہے ایک قطار کے طور پر ہر فائل کی. 1680 01:19:20,090 --> 01:19:22,550 کی قطاروں کے معاملے میں لگتا ہے. 1681 01:19:22,550 --> 01:19:26,670 ہم اپنے چھوٹے سے پہلی صف ہے تو تصویر، ہم اس قطار بنانے کے کر سکتے ہیں 1682 01:19:26,670 --> 01:19:30,640 ایک بڑی تصویر کی طرف سے ایک بڑی قطار میں، اور اس کے بعد تاہم اس صف کی نقل تیار 1683 01:19:30,640 --> 01:19:34,250 اسے نقل کرنے کی ضرورت ہے کئی بار، بلکہ پکسل پکسل میں جانے کی نسبت، 1684 01:19:34,250 --> 01:19:37,260 جب مبہم ہو جاتا ہے جس میں فائلوں کے ساتھ نمٹنے. 1685 01:19:37,260 --> 01:19:38,730 >> ہم نے کیونکہ اگر - 1686 01:19:38,730 --> 01:19:41,260 میں جگہ سے باہر چلا رہا ہوں. 1687 01:19:41,260 --> 01:19:46,490 یہ ہماری فائل ہے، اور ہم ہیں، تو اس وہاں ایک پکسل، اور ہم نے اسے ڈال کرنا چاہتے ہیں 1688 01:19:46,490 --> 01:19:49,840 وہیں، ہم اب بھی کچھ چیزیں ہیں وہاں ہم جب جانے کے لئے اس کی ضرورت 1689 01:19:49,840 --> 01:19:51,450 لکھنے اور ہماری نئی فائل - 1690 01:19:51,450 --> 01:19:53,250 ہماری فائل ہے کہ دو مرتبہ کے طور بڑا ہے. 1691 01:19:53,250 --> 01:19:56,820 >> لیکن یہ فائل افعال کے ساتھ واقعی مشکل ہے نئی لائنوں کے ارد گرد جائیں 1692 01:19:56,820 --> 01:20:00,260 اس طرح، اور پھر یہاں واپس جاؤ اور وہاں میں چیزیں ڈال. 1693 01:20:00,260 --> 01:20:04,500 کچھ کرنے کے لئے تقریبا ناممکن ہے اس طرح، کہ سمجھ میں آتا ہے. 1694 01:20:04,500 --> 01:20:10,180 ہم قطار کے معاملے میں لگتا ہے کہ اگر ایسا ہے تو، ہم کر سکتے ہیں ہمارے صف لے، اور پھر اسے ڈال دیا - 1695 01:20:10,180 --> 01:20:11,720 عمودی قطاروں دہرانے. 1696 01:20:11,720 --> 01:20:15,860 >> اور یہ کہ ہم نیا سائز کے ساتھ نمٹنے کے لئے کس طرح ہے عمودی بلکہ افقی سے. 1697 01:20:15,860 --> 01:20:18,810 اس قسم کے فوری تھا، اور تھوڑا مبہم. 1698 01:20:18,810 --> 01:20:22,375 بدقسمتی سے ہمارے وقت نہیں ہے. 1699 01:20:22,375 --> 01:20:27,340 میں نے تم میں سے ان لوگوں کے لئے باہر کھڑے ہوں گے یہاں کے بارے میں سوالات ہیں جو 1700 01:20:27,340 --> 01:20:30,500 کی وصولی سمیت مسئلہ سیٹ،. 1701 01:20:30,500 --> 01:20:32,320 >> تو اب کے لئے ملتوی کرتے ہیں. 1702 01:20:32,320 --> 01:20:34,480 اور پھر، اگر آپ کو کوئی سوال ہے تو، ہم باہر بات چیت کر سکتے. 1703 01:20:34,480 --> 01:20:38,294