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