1 00:00:00,000 --> 00:00:03,944 >> [সঙ্গীত বাজাচ্ছি] 2 00:00:03,944 --> 00:00:10,732 3 00:00:10,732 --> 00:00:11,690 DAVID Malan: ঠিক আছে. 4 00:00:11,690 --> 00:00:14,674 এটি CS50, এবং এই 2 সপ্তাহ শেষে হয়. 5 00:00:14,674 --> 00:00:16,840 আমি হতে পারে না তাই দুঃখিত নই সেখানে সব আজ আপনার সাথে, 6 00:00:16,840 --> 00:00:18,300 কিন্তু আপনি খুব ভাল হাতে করছি. 7 00:00:18,300 --> 00:00:21,710 আমার পরিচয় করিয়ে দিতে অনুমতি CS50 এর নিজস্ব রব বাউডেন. 8 00:00:21,710 --> 00:00:29,106 9 00:00:29,106 --> 00:00:31,730 ছিনিয়ে বাউডেন: এবং অবশ্যই, তারপর আমরা আসলে মজা করা আছে 10 00:00:31,730 --> 00:00:36,820 তিনি আমাদের একটি উল্লম্ব পাঠিয়েছেন ভিডিও এবং এই ব্যাখ্যা. 11 00:00:36,820 --> 00:00:38,320 >> [ভিডিও প্লেব্যাক] 12 00:00:38,320 --> 00:00:39,820 >> [সঙ্গীত বাজাচ্ছি] 13 00:00:39,820 --> 00:00:42,350 >> [পদানুসারে] 14 00:00:42,350 --> 00:00:44,730 >> -এই ভিডিও না এই পথ সন্ধান করতে হবে. 15 00:00:44,730 --> 00:00:46,570 এটা প্রতিরোধ করা যেত. 16 00:00:46,570 --> 00:00:49,070 কোন উল্লম্ব ভিডিও বলুন. 17 00:00:49,070 --> 00:00:53,310 >> -উল্লম্ব ভিডিও যখন আপনি ঘটতে আপনার ক্যামেরা কুপথ রাখা. 18 00:00:53,310 --> 00:00:55,880 তোমার ভিডিও শেষ হবে আপ বিষ্ঠা মত খুঁজছেন. 19 00:00:55,880 --> 00:00:57,650 >> - [ঘোঁৎ ঘোঁৎ] 20 00:00:57,650 --> 00:01:02,240 >> আসক্ত আরো এবং আরো মানুষ -আছে আছে প্রতিদিন উল্লম্ব ভিডিও উপার্জন করতে. 21 00:01:02,240 --> 00:01:06,240 এটি ফাটল বা কিছুই না, কিন্তু এটি এখনও খুব খারাপ. 22 00:01:06,240 --> 00:01:10,410 দু ধরণের আছে ভিভিএস সঙ্গে নিপীড়িত হয় যারা মানুষ. 23 00:01:10,410 --> 00:01:14,160 প্রথম গ্রুপ একইরূপে ভিডিও তারা ছবি মত অঙ্কুর. 24 00:01:14,160 --> 00:01:15,850 তারা কোন ক্ষতি হতে দিবে না. 25 00:01:15,850 --> 00:01:19,180 তারা শুধু যে বুঝতে না আপনি একটি ছবি চালু করতে পারেন যখন, 26 00:01:19,180 --> 00:01:20,880 আপনি কি সত্যিই একটি ভিডিও চালু করতে পারবেন না. 27 00:01:20,880 --> 00:01:21,880 >> [ক্র্যাশ] 28 00:01:21,880 --> 00:01:23,460 >> - [বানর শব্দ] 29 00:01:23,460 --> 00:01:27,540 >> -বাছাইযোগ্য অন্যান্য দলের মানুষ হয় যারা একটি [বেতারসঙ্কেত] দিতে হবে না. 30 00:01:27,540 --> 00:01:31,090 >> -উল্লম্ব ভিডিও সিন্ড্রোম বিপজ্জনক. 31 00:01:31,090 --> 00:01:34,120 মোশন পিকচার্স আছে সবসময় অনুভূমিক হয়েছে. 32 00:01:34,120 --> 00:01:35,990 টেলিভিশন অনুভূমিক হয়. 33 00:01:35,990 --> 00:01:38,380 কম্পিউটার স্ক্রিনে অনুভূমিক হয়. 34 00:01:38,380 --> 00:01:41,580 মানুষজনের অনুভূমিক হয়. 35 00:01:41,580 --> 00:01:45,170 আমরা নির্মিত না হয় উল্লম্ব ভিডিওগুলি. 36 00:01:45,170 --> 00:01:47,600 >> -আমি উল্লম্ব ভিডিও ভালবাসেন. 37 00:01:47,600 --> 00:01:50,410 >> -Nobody আপনি বজায় রাখে. 38 00:01:50,410 --> 00:01:53,340 >> -যদি এই সমস্যা অবারিত, আপনি খুব বাম 39 00:01:53,340 --> 00:01:57,650 চার ভিডিও প্রদর্শন শুরু করবে একবারে শুধু ব্যান্ডউইথ সংরক্ষণ করার. 40 00:01:57,650 --> 00:02:02,400 >> -Letterboxed উল্লম্ব ভিডিও would একটি ডাকটিকিট মাপ হতে. 41 00:02:02,400 --> 00:02:04,920 >> -এবং এটা সর্বত্র ছড়িয়ে দিতে হবে. 42 00:02:04,920 --> 00:02:07,670 সিনেমা পর্দা আছে সবসময় অনুভূমিক হয়েছে. 43 00:02:07,670 --> 00:02:11,200 উল্লম্ব ভিডিও হয়ে যদি গৃহীত, সিনেমা ও থিয়েটার 44 00:02:11,200 --> 00:02:13,930 লম্বা এবং চর্মসার হতে থাকবে. 45 00:02:13,930 --> 00:02:17,710 >> -এবং সিনেমা ও থিয়েটার সব would নিচে টুটা এবং পুনর্নির্মিত পেতে আছে. 46 00:02:17,710 --> 00:02:22,090 এবং সময় দ্বারা তারা পুনর্নির্মিত হয়, Mila Kunis বৃদ্ধা ও কুৎসিত হতে হবে. 47 00:02:22,090 --> 00:02:24,342 >> -Birds সেগুলি বিপর্যস্ত এবং মারা হবে. 48 00:02:24,342 --> 00:02:26,530 >> -We'll অনমনীয় সব পেতে তাকিয়ে থেকে গর্দানে. 49 00:02:26,530 --> 00:02:29,800 >> -এবং কেউ বসতে হবে সামনের সারিতে আবার কখনও. 50 00:02:29,800 --> 00:02:37,170 >> -জর্জ লুকাস পুনরায় রিলিজ হবে রাশি যুদ্ধ চর্মসার সংস্করণ again--. 51 00:02:37,170 --> 00:02:41,860 >> -আমি বলতে সত্যিই সক্ষম ছিল না আমি বলতে চেয়েছি গল্প. 52 00:02:41,860 --> 00:02:46,030 এই আমার জন্য একটি বড় সুযোগ ছিল একটি নতুন প্রযুক্তি নিয়ে পরীক্ষা. 53 00:02:46,030 --> 00:02:48,150 >> একটি হেঁচকা -আপনি. 54 00:02:48,150 --> 00:02:54,430 >> একটি মোবাইল ডিভাইসে ব্যবহার করা হয় -প্রতিটি সময় ভিডিও রেকর্ড, প্রলোভন আছে. 55 00:02:54,430 --> 00:02:56,370 শুধু না বল. 56 00:02:56,370 --> 00:03:00,116 জর্জ লুকাস কোন বলুন. 57 00:03:00,116 --> 00:03:04,062 পুরানো Mila Kunis কোন বলুন. 58 00:03:04,062 --> 00:03:06,600 কোন উল্লম্ব ভিডিও বলুন. 59 00:03:06,600 --> 00:03:12,511 >> যদি আপনি কাউকে এরকম দেখতে হলে -এবং, বলে "আপনি যে অধিকার ডামি শুটিং করছি না!" 60 00:03:12,511 --> 00:03:15,433 >> [সঙ্গীত বাজাচ্ছি] 61 00:03:15,433 --> 00:03:18,842 62 00:03:18,842 --> 00:03:19,830 >> [END টি প্লেব্যাক] 63 00:03:19,830 --> 00:03:23,702 >> [সাধুবাদ] 64 00:03:23,702 --> 00:03:27,598 >> [অডিও আউট] 65 00:03:27,598 --> 00:03:44,041 66 00:03:44,041 --> 00:03:45,790 ছিনিয়ে বাউডেন: সরল ক্রিপ্টোগ্রাফি আকারে, 67 00:03:45,790 --> 00:03:49,500 যা মূলত এনক্রিপশন হয় গোপন বার্তার ও ডিক্রিপশন. 68 00:03:49,500 --> 00:03:52,590 তাই আমরা এখানে একটি খুব সহজ খেলনা আছে. 69 00:03:52,590 --> 00:03:56,900 আর ধারণা বাইরের রিং হয় ভেতরের রিং কাছাকাছি rotates. 70 00:03:56,900 --> 00:04:01,610 আর আপনি আমি জুম হয়তো তাহলে, দেখতে পারেন , এটা দেখতে কঠিন কিন্তু যে. 71 00:04:01,610 --> 00:04:05,090 কিন্তু, মত, সংখ্যা 1 টি ভাল, যে সরানো. 72 00:04:05,090 --> 00:04:09,120 >> সংখ্যা 1 চিঠি মানচিত্র চিঠি এক্স, সংখ্যা 2 মানচিত্র 73 00:04:09,120 --> 00:04:11,630 জে অনুমোদিত অবিশ্বাস্যভাবে এগিয়ে লাফালাফি না. 74 00:04:11,630 --> 00:04:16,100 পত্র 2 জে মানচিত্র সংখ্যা 3 সুতরাং ডি মানচিত্র 75 00:04:16,100 --> 00:04:20,140 এই রিং সঙ্গে আপনি দিতে পারেন কেউ একটি বার্তা 1, 2, 3. 76 00:04:20,140 --> 00:04:22,624 কিছু কারণে আপনার জন্য তাদের XJD কিছু জানাতে চাই. 77 00:04:22,624 --> 00:04:24,540 কিন্তু আপনি তাদের দিতে পারেন সংখ্যার কিছু বার্তা, 78 00:04:24,540 --> 00:04:28,460 এবং তারা এই রিং আছে যতদিন, তারা আপনি যা বলার চেষ্টা করছেন কি ডিক্রিপ্ট করতে পারেন. 79 00:04:28,460 --> 00:04:32,510 >> সুতরাং আপনি দেখে থাকবেন এই ক্রিপ্টোগ্রাফি বিশেষ উদাহরণ 80 00:04:32,510 --> 00:04:36,640 আগে ক্রিসমাস সিজনের প্রায় যদি আপনি একটি ক্রিসমাস গল্প দেখেছেন করেছি. 81 00:04:36,640 --> 00:04:38,520 আপনি দেখেননি থাকেন তাহলে এটা আগে, তারপর শুধু 82 00:04:38,520 --> 00:04:41,060 আক্ষরিক এ TBS উপর চালু বড়োদিনের আগের দিন যে কোনো সময়, 83 00:04:41,060 --> 00:04:44,510 তারা শুধু ফিরে ফিরে এটা দেখাতে কারণ সমগ্র দিনের ব্যাক ব্যাক ব্যাক. 84 00:04:44,510 --> 00:04:46,744 এবং প্রাসঙ্গিক ভিডিও এই হল. 85 00:04:46,744 --> 00:04:47,410 [ভিডিও প্লেব্যাক] 86 00:04:47,410 --> 00:04:50,020 এটা সব এবং কতিপয় পরিচিত হবু রালফ পার্কার এতদ্দ্বারা যে 87 00:04:50,020 --> 00:04:52,850 লিটল একজন সদস্য নিয়োগ অনাথ অ্যানি গোপন বৃত্ত 88 00:04:52,850 --> 00:04:56,490 এবং সব সন্মান প্রাপ্ত করার উদ্দেশ্যে এনটাইটেল করা হয় এবং বেনিফিট তত্প্রতি ঘটছে. 89 00:04:56,490 --> 00:04:59,010 লিটল অনাথ অ্যানি স্বাক্ষর করেন. 90 00:04:59,010 --> 00:05:03,120 কালিতে পিয়ের আন্দ্রে প্রতিস্বাক্ষরিত! 91 00:05:03,120 --> 00:05:07,460 সম্মান ও সুবিধা ইতিমধ্যে নয় বছর বয়সে! 92 00:05:07,460 --> 00:05:12,530 >> [রেডিও থেকে yelling] 93 00:05:12,530 --> 00:05:13,030 -চলে আসো. 94 00:05:13,030 --> 00:05:14,000 এর সাথে পেতে চলুন শুরু করা যাক. 95 00:05:14,000 --> 00:05:18,274 আমি সব যে জ্যাজ প্রয়োজন হবে না চোরাকারবারী ও জলদস্যু সম্পর্কে. 96 00:05:18,274 --> 00:05:20,440 সঙ্গে শুনুন আগামীকাল রাত আখেরী সাহসিক 97 00:05:20,440 --> 00:05:22,540 কালো জলদস্যু জাহাজের. 98 00:05:22,540 --> 00:05:25,460 এখন, এটা জন্য সময় অ্যানি এর গোপন বার্তা 99 00:05:25,460 --> 00:05:28,620 গোপন বৃত্ত আপনাকে সদস্যদের জন্য. 100 00:05:28,620 --> 00:05:32,370 বাচ্চাদের, শুধুমাত্র সদস্যদের মনে রেখো অ্যানি এর গোপন বৃত্ত এর 101 00:05:32,370 --> 00:05:34,880 অ্যানি এর গোপন বার্তা ডিকোড করতে পারে. 102 00:05:34,880 --> 00:05:39,100 মনে রাখবেন, অ্যানি আপনার উপর নির্ভর করে না. 103 00:05:39,100 --> 00:05:41,660 B2 আপনার পিন সেট করুন. 104 00:05:41,660 --> 00:05:43,960 এখানে বার্তা. 105 00:05:43,960 --> 00:05:44,680 12. 106 00:05:44,680 --> 00:05:45,180 11. 107 00:05:45,180 --> 00:05:45,679 2. 108 00:05:45,679 --> 00:05:48,110 -আমি আমার প্রথম গোপন বৈঠকে am. 109 00:05:48,110 --> 00:05:49,030 >> -25. 110 00:05:49,030 --> 00:05:49,834 14. 111 00:05:49,834 --> 00:05:51,040 11. 112 00:05:51,040 --> 00:05:51,854 18. 113 00:05:51,854 --> 00:05:52,670 16. 114 00:05:52,670 --> 00:05:54,570 >> -ওহ, পিয়ের উদাত্ত আজ রাতে. 115 00:05:54,570 --> 00:05:57,490 আমি যে আজ রাতে বলতে পারে বার্তা ছিল সত্যিই গুরুত্বপূর্ণ. 116 00:05:57,490 --> 00:05:57,990 -3. 117 00:05:57,990 --> 00:06:00,080 25. 118 00:06:00,080 --> 00:06:01,580 যে অ্যানি নিজেকে থেকে একটি বার্তা. 119 00:06:01,580 --> 00:06:02,880 কেউ বলতে না, মনে রাখবেন. 120 00:06:02,880 --> 00:06:07,840 121 00:06:07,840 --> 00:06:11,130 >> -পাঁচ সেকেন্ড পরে, আমি শুধুমাত্র আছি বাড়িতে রুম যেখানে নয়টি একটি ছেলে 122 00:06:11,130 --> 00:06:15,830 গোপনীয়তা এবং ডিকোড বসতে পারে. 123 00:06:15,830 --> 00:06:16,620 অই! 124 00:06:16,620 --> 00:06:17,340 বি! 125 00:06:17,340 --> 00:06:20,210 আমি পরের গিয়েছিলাম. 126 00:06:20,210 --> 00:06:23,300 ই প্রথম শব্দ "হিসেবে." হয় 127 00:06:23,300 --> 00:06:25,880 এস এটা এখন সহজ আসছিলেন. 128 00:06:25,880 --> 00:06:28,400 ইউ 25. 129 00:06:28,400 --> 00:06:30,528 যে আর এর 130 00:06:30,528 --> 00:06:31,278 এসো উপর, Ralphie! 131 00:06:31,278 --> 00:06:31,861 আমাকে যেতে হবে! 132 00:06:31,861 --> 00:06:33,182 এক্ষুনি -I'll, মা! 133 00:06:33,182 --> 00:06:36,038 ফার্গুসন. 134 00:06:36,038 --> 00:06:42,840 কি নিশ্চিত করা - টি মন্ত্রণালয় "করতে ভুলবেন না"? 135 00:06:42,840 --> 00:06:44,770 লিটল অনাথ কী ছিল অ্যানি বলার চেষ্টা করছেন? 136 00:06:44,770 --> 00:06:46,381 কি করতে ভুলবেন না? 137 00:06:46,381 --> 00:06:47,825 >> -Randy যেতে না করেনি! 138 00:06:47,825 --> 00:06:48,866 আপনি খসা দয়া হবে? 139 00:06:48,866 --> 00:06:49,783 >> -সমস্ত অধিকার, মা! 140 00:06:49,783 --> 00:06:51,786 আমি ডান আউট হবেন! 141 00:06:51,786 --> 00:06:53,606 আমি কাছাকাছি এখন পেয়ে ছিল. 142 00:06:53,606 --> 00:06:55,550 টান ভয়ানক ছিল. 143 00:06:55,550 --> 00:06:57,050 এটা কি ছিল? 144 00:06:57,050 --> 00:06:59,905 গ্রহের ভাগ্য অনিশ্চয়তার মধ্যে থাকা হতে পারে! 145 00:06:59,905 --> 00:07:01,736 >> -Ralphie, রান্ডি এর যেতে পেয়েছিলাম! 146 00:07:01,736 --> 00:07:05,680 >> উচ্চ স্বরে কাঁদতে জন্য, ডান আউট হতে -I'll! 147 00:07:05,680 --> 00:07:07,170 প্রায় সেখানে! 148 00:07:07,170 --> 00:07:08,150 আমার আঙ্গুলের আসেন. 149 00:07:08,150 --> 00:07:09,980 আমার মনের একটি ইস্পাত ফাঁদ ছিল. 150 00:07:09,980 --> 00:07:11,496 প্রতিটি লোমকূপ আন্দোলিত. 151 00:07:11,496 --> 00:07:13,268 এটা প্রায় পরিষ্কার দেখা গিয়েছে! 152 00:07:13,268 --> 00:07:13,767 হ্যাঁ. 153 00:07:13,767 --> 00:07:14,609 হ্যাঁ. 154 00:07:14,609 --> 00:07:15,108 হ্যাঁ. 155 00:07:15,108 --> 00:07:16,449 হ্যাঁ. 156 00:07:16,449 --> 00:07:20,240 আপনার Ovaltine পান করতে ভুলবেন না. 157 00:07:20,240 --> 00:07:20,740 Ovaltine? 158 00:07:20,740 --> 00:07:26,687 159 00:07:26,687 --> 00:07:27,520 একটি নোংরা বাণিজ্যিক? 160 00:07:27,520 --> 00:07:32,040 161 00:07:32,040 --> 00:07:34,920 কুত্তার বাচ্চা. 162 00:07:34,920 --> 00:07:35,890 >> [END টি প্লেব্যাক] 163 00:07:35,890 --> 00:07:39,650 >> ছিনিয়ে বাউডেন: সুতরাং যে কিভাবে Ovaltine ক্রিপ্টোগ্রাফি সাথে সম্পর্কিত. 164 00:07:39,650 --> 00:07:42,290 মূলত, CS50 শুধু বিজ্ঞাপনে Ovaltine, তাই আমরা পারা 165 00:07:42,290 --> 00:07:44,400 Ovaltine জন্য একটি অপ্রীতিকর বাণিজ্যিক হতে. 166 00:07:44,400 --> 00:07:44,900 ঠিক আছে. 167 00:07:44,900 --> 00:07:47,120 তাই এখন প্রকৃত কম্পিউটার বিজ্ঞান. 168 00:07:47,120 --> 00:07:50,670 সোমবার মনে রাখবেন আমরা বাম বন্ধ স্ট্রিং মধ্যে গভীর ডাইভিং. 169 00:07:50,670 --> 00:07:52,820 সুতরাং আমরা সাথে ডিল করা হয়েছে স্ট্রিং ", Zamyla." 170 00:07:52,820 --> 00:07:55,130 আর আমরা স্বীকৃতি ছিল আমরা বিবেচনা করতে পারেন যে 171 00:07:55,130 --> 00:07:57,510 অক্ষরের একটা ক্রম হিসাবে ", Zamyla". 172 00:07:57,510 --> 00:07:59,740 আমরা শিখেছি যে মনে বন্ধনী স্বরলিপি. 173 00:07:59,740 --> 00:08:01,995 এই স্টোর করা থাকে তাই তারপর একটি স্ট্রিং "এর," 174 00:08:01,995 --> 00:08:05,860 আমরা যদি না বলেন, গুলি বন্ধনী 0, যে would অক্ষর বড় হাতের জেড নির্দেশ 175 00:08:05,860 --> 00:08:09,790 আমরা গুলি বন্ধনী 1, বলেন যে যদি প্রথম ছোট আকারের একটি নির্দেশ করবে, 176 00:08:09,790 --> 00:08:14,220 এবং তাই এর বন্ধনী 5 পর্যন্ত, যা সর্বশেষ একটি নির্দেশ করবে. 177 00:08:14,220 --> 00:08:17,090 >> এখন মনে রাখবেন এই স্ট্রিং এর দৈর্ঘ্য, 6 178 00:08:17,090 --> 00:08:23,220 কিন্তু স্ট্রিং মধ্যে সূচকগুলি হয় 0 5 মাধ্যমে, যে মাধ্যমে Z একটি স্থায়ী. 179 00:08:23,220 --> 00:08:28,650 সুতরাং এখন এই একটি বড় ছবি মধ্যে ফিট আপনার কম্পিউটার এর মেমরি, আপনার RAM- র. 180 00:08:28,650 --> 00:08:32,020 তাই কোথাও প্রোগ্রাম যে আপনি আপনার কম্পিউটার চালাচ্ছেন 181 00:08:32,020 --> 00:08:34,780 মনে রাখা প্রয়োজন, Zamyla কোথাও মেমরি. 182 00:08:34,780 --> 00:08:36,029 তাই আমি একটি স্বেচ্ছাসেবক থাকতে পারে? 183 00:08:36,029 --> 00:08:38,840 184 00:08:38,840 --> 00:08:40,181 হ্যাঁ. 185 00:08:40,181 --> 00:08:50,120 186 00:08:50,120 --> 00:08:51,500 এবং তোমার নাম কি? 187 00:08:51,500 --> 00:08:52,410 >> DEAN: ডিন. 188 00:08:52,410 --> 00:08:53,550 >> ছিনিয়ে বাউডেন: ডিন? 189 00:08:53,550 --> 00:08:54,910 ডিন দেখা হওয়ায় খুশী হলাম. 190 00:08:54,910 --> 00:08:58,240 তাই এখানে আসা, এবং আমরা আঁকা আছে চলুন 191 00:08:58,240 --> 00:09:00,740 আমাদের মেমরি চমৎকার ছিমছাম বহির্বিন্যাস. 192 00:09:00,740 --> 00:09:05,950 এখন আমি মেমরির চিন্তা করতে চান বাইট এক দীর্ঘ ফালা হিসাবে, 193 00:09:05,950 --> 00:09:11,090 কিন্তু শুধু প্রদর্শনের উদ্দেশ্যে আমরা করব শুধু নিচ থেকে উপরের ডানে বামে না. 194 00:09:11,090 --> 00:09:11,590 ঠিক আছে? 195 00:09:11,590 --> 00:09:22,030 >> তাই আমি একটি দেখাতে যাচ্ছি Getstrings.c প্রোগ্রামটিতে. 196 00:09:22,030 --> 00:09:25,760 আর তাই এই সব প্রোগ্রাম করছেন চার পংক্তি চাইছে 197 00:09:25,760 --> 00:09:28,830 সঙ্গে ব্যবহারকারীর থেকে GetString এবং তারপর মুদ্রণ 198 00:09:28,830 --> 00:09:30,950 যাই হোক না কেন যে প্রথম পংক্তি প্রবেশ করানো হয়েছিল. 199 00:09:30,950 --> 00:09:32,840 আমরা চার মাধ্যমে দুটি উপেক্ষা করছি. 200 00:09:32,840 --> 00:09:33,610 ঠিক আছে. 201 00:09:33,610 --> 00:09:38,210 তাই এখানে এখন আমি যখন আমি প্রথম অনুরোধ S1. 202 00:09:38,210 --> 00:09:39,740 তাই আপনি যদি কম্পিউটার হয়. 203 00:09:39,740 --> 00:09:41,680 আর আপনি GetString বাস্তবায়ন করছে. 204 00:09:41,680 --> 00:09:46,710 তাই আপনি যদি একটি স্ট্রিং থেকে অনুরোধ আমার, এবং আমি ঠিক আছে, ডিন বলে. 205 00:09:46,710 --> 00:09:47,900 স্ট্রিং দিন "ডীন." 206 00:09:47,900 --> 00:09:50,300 >> তাই কোথাও মেমরি আপনি মনে রাখা প্রয়োজন "ডীন." 207 00:09:50,300 --> 00:09:52,160 তাই কোথাও মেমরি সেটিকে লিখুন. 208 00:09:52,160 --> 00:09:58,270 209 00:09:58,270 --> 00:09:59,210 পারফেক্ট. 210 00:09:59,210 --> 00:09:59,880 ঠিক আছে. 211 00:09:59,880 --> 00:10:01,740 তাই এখন আমরা S2 আছে. 212 00:10:01,740 --> 00:10:03,869 এবং S2 হতে যাচ্ছে GetString, একটি অনুরোধ. 213 00:10:03,869 --> 00:10:05,160 তাই আমি একটি পংক্তি লিখুন যাচ্ছি. 214 00:10:05,160 --> 00:10:08,720 আমি লিখতে যাচ্ছি "হানা." 215 00:10:08,720 --> 00:10:10,586 তাই কোথাও মেমরিতে "হানা" লিখুন. 216 00:10:10,586 --> 00:10:18,860 217 00:10:18,860 --> 00:10:19,360 হ্যা. 218 00:10:19,360 --> 00:10:23,000 একটি-এইচ. 219 00:10:23,000 --> 00:10:25,550 >> ঠিক আছে, তাই এখন S3. 220 00:10:25,550 --> 00:10:28,380 এবং এটি অন্য হতে যাচ্ছে GetString যাও অনুরোধ. 221 00:10:28,380 --> 00:10:37,020 আর তাই এখন "মারিয়া." লিখতে 222 00:10:37,020 --> 00:10:37,520 ঠিক আছে. 223 00:10:37,520 --> 00:10:40,980 এবং তারপর এক শেষ নেই GetString যাও অনুরোধ, S4. 224 00:10:40,980 --> 00:10:42,580 সুতরাং, আমি জানি না. 225 00:10:42,580 --> 00:10:45,640 কিভাবে আমরা সাথে যেতে সম্পর্কে antidisestablishmentarianism. 226 00:10:45,640 --> 00:10:49,460 সুতরাং যে মেমরিতে লিখতে. 227 00:10:49,460 --> 00:10:50,400 হ্যা. 228 00:10:50,400 --> 00:10:53,970 তাই শুধু "রব." না 229 00:10:53,970 --> 00:10:54,560 >> ঠিক আছে. 230 00:10:54,560 --> 00:10:58,410 কেন তাই এখন explain-- আপনি এই স্পেস ছেড়ে? 231 00:10:58,410 --> 00:11:01,340 আপনি এই ফাঁকা আছে কেন এখানে, এখানে, এবং এখানে স্থান? 232 00:11:01,340 --> 00:11:05,170 233 00:11:05,170 --> 00:11:05,670 হ্যাঁ. 234 00:11:05,670 --> 00:11:09,450 আমি যেতে সুতরাং যখন বিজ্ঞপ্তি যদি তাই s1-- প্রিন্ট করতে 235 00:11:09,450 --> 00:11:11,890 ছিল "হানা" চলমান ডান আপ পরবর্তী "ডীন" 236 00:11:11,890 --> 00:11:14,360 আমরা যখন জানি না কিভাবে স্ট্রিং "ডীন" শেষ? 237 00:11:14,360 --> 00:11:19,470 তাই স্ট্রিং S1 মুদ্রণ থাকতে পারে শুধু "DeanHannahMariaRob" মুদ্রিত 238 00:11:19,470 --> 00:11:22,720 এটা কোনো খেই না থাকলে "ডীন" আসলে শেষ কয়েক যখন. 239 00:11:22,720 --> 00:11:23,240 >> ঠিক আছে. 240 00:11:23,240 --> 00:11:27,650 তাই মেমরি উপায় আমরা আসলে একটি স্ট্রিং এর এই শেষ প্রতিনিধিত্ব 241 00:11:27,650 --> 00:11:29,940 ব্যাকস্ল্যাশ শূন্য দিয়ে হয়. 242 00:11:29,940 --> 00:11:32,620 তাই এই স্থান আমরা চেয়েছিলেন ঠিক কি. 243 00:11:32,620 --> 00:11:34,040 এটি একটি ব্যাকস্ল্যাশ শূন্য হওয়া উচিত. 244 00:11:34,040 --> 00:11:37,690 এটি একটি ব্যাকস্ল্যাশ শূন্য হতে হবে এবং এই একটি ব্যাকস্ল্যাশ শূন্য হবে. 245 00:11:37,690 --> 00:11:41,585 এবং আপনি একটি কল্পিত পুরস্কার থাকতে পারে একটি নিখুঁত স্বেচ্ছাসেবক হচ্ছে. 246 00:11:41,585 --> 00:11:44,910 247 00:11:44,910 --> 00:11:45,860 একটি চাপ বল নিন! 248 00:11:45,860 --> 00:11:49,040 249 00:11:49,040 --> 00:11:49,700 >> ঠিক আছে. 250 00:11:49,700 --> 00:11:54,420 তাই এই চরিত্র ব্যাকস্ল্যাশ শূন্য হয় কিভাবে আমরা একটি স্ট্রিং এর শেষে ইঙ্গিত. 251 00:11:54,420 --> 00:11:57,120 এটা কিভাবে যখন কোনো প্রোগ্রাম একটি স্ট্রিং প্রিন্ট করতে চায়, 252 00:11:57,120 --> 00:11:59,760 আমরা শিখেছি স্মরন how-- এটা strlen ফাংশন গত সপ্তাহে? 253 00:11:59,760 --> 00:12:00,940 স্ট্রিং দৈর্ঘ্য? 254 00:12:00,940 --> 00:12:03,770 এটা স্ট্রিং দৈর্ঘ্য করতে সক্ষম হয় কিভাবে একটি স্ট্রিং কতদিন নির্ধারণ. 255 00:12:03,770 --> 00:12:05,810 এটা শুধু iterating রাখে অক্ষর ওভার 256 00:12:05,810 --> 00:12:08,217 এটা খুঁজে বের করে যতক্ষণ শূন্য চরিত্র ব্যাকস্ল্যাশ. 257 00:12:08,217 --> 00:12:11,050 গুরুত্বপূর্ণ বিষয় বুঝতে তাই ব্যাকস্ল্যাশ শূন্য চরিত্র সম্পর্কে 258 00:12:11,050 --> 00:12:14,950 এটা প্রতিনিধিত্ব করা হয় বিট সব শূন্য. 259 00:12:14,950 --> 00:12:18,980 তাই এই স্বতন্ত্র যে লক্ষ্য শূন্য চরিত্র থেকে. 260 00:12:18,980 --> 00:12:23,010 তাই শূন্য চরিত্র, যদি আপনি মনে রাখবেন উদাহরণস্বরূপ তিনি শেষে দিয়েছেন 261 00:12:23,010 --> 00:12:27,360 বক্তৃতা অক্ষর মানচিত্র যেখানে 65 রাজধানী একটি ম্যাপের মত চাচ্ছি. 262 00:12:27,360 --> 00:12:29,130 97 একটি মানচিত্র ছোট হাতের অক্ষর. 263 00:12:29,130 --> 00:12:30,890 ছোট হাতের বি 98 হবে. 264 00:12:30,890 --> 00:12:35,220 সুতরাং সংখ্যা 0 মানচিত্র আমি না চাচ্ছি আমার মাথার উপরে বন্ধ জানেন. 265 00:12:35,220 --> 00:12:36,400 44 বা 45. 266 00:12:36,400 --> 00:12:37,890 যে কোন অঞ্চলের কোথাও. 267 00:12:37,890 --> 00:12:40,850 >> তাই চরিত্র 0 একটি প্রকৃত সংখ্যা. 268 00:12:40,850 --> 00:12:44,350 কিন্তু ব্যাকস্ল্যাশ শূন্য সব শূন্য বিট মানচিত্র. 269 00:12:44,350 --> 00:12:46,380 সুতরাং একটি পার্থক্য আছে ব্যাকস্ল্যাশ শূন্য মধ্যে, 270 00:12:46,380 --> 00:12:48,450 যা আমরা নাল টারমিনেটর ডাকবো. 271 00:12:48,450 --> 00:12:53,210 একটি পার্থক্য মধ্যে আছে ব্যাকস্ল্যাশ শূন্য এবং চরিত্র শূন্য. 272 00:12:53,210 --> 00:12:54,350 >> ঠিক আছে. 273 00:12:54,350 --> 00:12:57,520 তাই স্ট্রিং সম্পর্কে আরো একটু কথা বলা. 274 00:12:57,520 --> 00:13:01,470 তখন আমরা কোথা থেকে এখানে দেখুন এটি মেমরি পরিপূর্ণ হবে. 275 00:13:01,470 --> 00:13:07,940 তাই একটা ক্রম হিসাবে স্ট্রিং এই ধারণা characters-- অফিসিয়াল কম্পিউটার তাই 276 00:13:07,940 --> 00:13:10,750 ক্রম জন্য sciency শব্দটি একটি অ্যারে. 277 00:13:10,750 --> 00:13:13,790 সুতরাং আমরা একটি স্ট্রিং কল করবে অক্ষরের একটি অ্যারের. 278 00:13:13,790 --> 00:13:17,770 এবং আসলে অন্যান্য তথ্য আছে আমরা বাইরে অ্যারে করতে পারেন যে ধরনের. 279 00:13:17,770 --> 00:13:19,975 >> সুতরাং এই অনুপ্রাণিত করার জন্য, একটি উদাহরণ তাকান. 280 00:13:19,975 --> 00:13:22,810 281 00:13:22,810 --> 00:13:29,812 আমরা আমি করব ages0.c ডাকবো কপি এবং আমাদের ফর্মা পেস্ট করুন. 282 00:13:29,812 --> 00:13:32,470 283 00:13:32,470 --> 00:13:33,410 ঠিক আছে. 284 00:13:33,410 --> 00:13:39,378 এই প্রোগ্রাম তাই আমরা কাজ করতে চান বয়স দখল হয় 285 00:13:39,378 --> 00:13:45,160 কোর্সে তিন শিক্ষার্থীদের. 286 00:13:45,160 --> 00:13:49,240 সুতরাং আমরা জানি কোন int age-- এবং এখন আমি 0 বলতে যাচ্ছি. 287 00:13:49,240 --> 00:13:53,140 সুতরাং আপনি age1 বলতে চাই, কিন্তু পারে উদ্দেশ্যে আমরা খুব শীঘ্রই দেখতে পাবেন, 288 00:13:53,140 --> 00:13:57,187 আমি int age0 GetInt সমান বলবো. 289 00:13:57,187 --> 00:13:59,270 GetInt একই কল তাই আমরা আমি ব্যবহার করছি যে 290 00:13:59,270 --> 00:14:01,561 প্ররোচনা করা ঘটবে না "আমার বয়স দিতে.", বলার অপেক্ষা রাখে না 291 00:14:01,561 --> 00:14:03,120 কিন্তু এটা কি ঠিক অনুরোধ. 292 00:14:03,120 --> 00:14:06,510 >> আর age1 GetInt সমান. 293 00:14:06,510 --> 00:14:09,600 এবং int age2 GetInt সমান. 294 00:14:09,600 --> 00:14:14,070 সুতরাং, আবার তিন ছাত্র, কিন্তু পরিণামে পরিবর্তনশীল সূচকের 295 00:14:14,070 --> 00:14:16,890 age2 মাধ্যমে age0 হয়. 296 00:14:16,890 --> 00:14:17,550 ঠিক আছে. 297 00:14:17,550 --> 00:14:23,960 তাই এই প্রোগ্রাম করতে হবে যাই হোক না কেন আমরা age0, age1, এবং age2 সঙ্গে চান, 298 00:14:23,960 --> 00:14:27,670 কিন্তু এই প্রোগ্রাম শেষ পর্যন্ত তিনটি ছাত্রদের জন্য কাজ করে. 299 00:14:27,670 --> 00:14:28,380 >> ঠিক আছে. 300 00:14:28,380 --> 00:14:32,110 তাই এখন আমি চার ছাত্র চান তাহলে কি? 301 00:14:32,110 --> 00:14:36,000 ওয়েল, আমি ফিরে যেতে হবে যাচ্ছি আমার কোড মধ্যে, মন্তব্য, পরিবর্তন 302 00:14:36,000 --> 00:14:39,840 এবং এখন আমরা একটি int আছে age3 GetInt সমান. 303 00:14:39,840 --> 00:14:40,610 ঠিক আছে. 304 00:14:40,610 --> 00:14:43,660 সুতরাং যারা এখানে সমস্যা দেখেন? 305 00:14:43,660 --> 00:14:47,310 সমস্যাটা কি সেটআপ এই সাজানোর সঙ্গে? 306 00:14:47,310 --> 00:14:47,810 হ্যা. 307 00:14:47,810 --> 00:14:53,110 308 00:14:53,110 --> 00:14:53,610 হ্যা. 309 00:14:53,610 --> 00:14:56,360 সুতরাং আমরা একটি তৈরি করছি প্রত্যেক শিক্ষার্থীর জন্য পরিবর্তনশীল. 310 00:14:56,360 --> 00:15:00,140 এখন যে কাজ করে, কিন্তু পরিণামে কি এখন আমি যদি 311 00:15:00,140 --> 00:15:06,500 আমি বয়স দখল করতে চান ", বলে আট ছাত্র বা 16 ছাত্র 312 00:15:06,500 --> 00:15:11,340 বা যাইহোক অনেক ছাত্র CS50 মধ্যে শত শত ছাত্র 313 00:15:11,340 --> 00:15:16,750 অথবা ক্যাম্পাস ছাত্র হাজার হাজার বা বিশ্বের কোটি কোটি মানুষের? 314 00:15:16,750 --> 00:15:19,130 তাই শেষ পর্যন্ত এই টেকসই নয়. 315 00:15:19,130 --> 00:15:21,990 আপনি নিজেকে কপি দেখতে কোন সময় এবং এই মত পেস্ট কোড, 316 00:15:21,990 --> 00:15:25,050 আপনি সাধারণত মনে করা উচিত একটি ভাল উপায় নেই যে. 317 00:15:25,050 --> 00:15:31,290 >> আমরা পরিচয় করিয়ে তাই এই হল যেখানে একটি অ্যারের ঘোষণা. 318 00:15:31,290 --> 00:15:34,564 তাই আপনি যদি একটি অ্যারে ডিক্লেয়ার যখন, এই কি সাধারণ ফরম্যাট 319 00:15:34,564 --> 00:15:35,480 অনুরূপ যাচ্ছে. 320 00:15:35,480 --> 00:15:36,664 আমরা টাইপ বলে যাচ্ছেন. 321 00:15:36,664 --> 00:15:38,830 এবং তারপর আমরা চলুন যে অ্যারে নাম দিতে, 322 00:15:38,830 --> 00:15:41,150 শুধু আমরা কোনো ভেরিয়েবল নির্ধারণ করতে পারবেন. 323 00:15:41,150 --> 00:15:43,980 এবং পরিশেষে আমরা ব্যবহার করছেন এই বন্ধনী নোটেশন আবার 324 00:15:43,980 --> 00:15:47,480 কিন্তু থেকে একটি ভিন্ন প্রেক্ষাপটে কিভাবে আমরা আগে এটা ব্যবহার করা হয়েছে. 325 00:15:47,480 --> 00:15:51,860 >> সুতরাং এখানে এই একটি স্বাভাবিক মনে হচ্ছে আমরা দেখা করেছি যে পরিবর্তনশীল ঘোষণা. 326 00:15:51,860 --> 00:15:54,890 সুতরাং আমরা আগে int x এর সেমিকোলন দেখা করেছি. 327 00:15:54,890 --> 00:16:00,020 অবশ্য, এখন আমরা কিছু দেখতে হতে পারে int x এর বন্ধনী 5 মত. 328 00:16:00,020 --> 00:16:04,020 আর এই ধারণা নির্বাণ আমরা থাকতে যে GetInt প্রোগ্রাম 329 00:16:04,020 --> 00:16:08,850 তাই আমরা বাস্তবায়ন করতে পারেন একই ভাবে এই. 330 00:16:08,850 --> 00:16:13,630 >> আসুন আমরা ব্যবহারের প্রবণতা সি এস এ বলা যাক কিছু সংখ্যা হিসাবে এন. 331 00:16:13,630 --> 00:16:16,150 তাই আমরা এখানে চলুন চার ছাত্র সংরক্ষণ. 332 00:16:16,150 --> 00:16:25,960 আর এখন আমরা int বয়স বলতে পারেন বন্ধনী বেশ এটি yet-- পেতে n-- 333 00:16:25,960 --> 00:16:32,210 চার শিক্ষার্থীদের একটি অ্যারে ডিক্লেয়ার করতে. 334 00:16:32,210 --> 00:16:38,050 সুতরাং এই দেখবে কিভাবে মেমরি এই অনুরূপ হতে হবে. 335 00:16:38,050 --> 00:16:39,570 এই স্পষ্ট. 336 00:16:39,570 --> 00:16:46,606 আর আমরা কোথাও আছে চলুন মেমরি মধ্যে আমি সেখানে এই পর্যন্ত করা হবে. 337 00:16:46,606 --> 00:16:52,690 338 00:16:52,690 --> 00:16:53,808 >> তাই কোথাও মেমরি. 339 00:16:53,808 --> 00:16:58,760 340 00:16:58,760 --> 00:16:59,727 এক দুই তিন চার. 341 00:16:59,727 --> 00:17:03,383 342 00:17:03,383 --> 00:17:09,849 আমরা একটি সারিতে চারটি ইন্টিজার আছে চার পূর্ণসংখ্যার এই অ্যারের জন্য. 343 00:17:09,849 --> 00:17:13,820 সুতরাং, বর্তমানে, কি এই বাক্সে এক মাপ? 344 00:17:13,820 --> 00:17:17,190 345 00:17:17,190 --> 00:17:17,690 হ্যা. 346 00:17:17,690 --> 00:17:18,390 এটা চার বাইট এর. 347 00:17:18,390 --> 00:17:19,690 এটা 32 বিট. 348 00:17:19,690 --> 00:17:22,310 তাই এখন এই ভিন্ন অ্যারে থেকে যে আমরা 349 00:17:22,310 --> 00:17:24,020 অক্ষরের আগে, অ্যারের দেখলেন. 350 00:17:24,020 --> 00:17:28,540 একটি স্ট্রিং প্রতিটি বাক্স, শুধুমাত্র এক বাইট ছিল একটি অক্ষর শুধুমাত্র এক বাইট কারণ. 351 00:17:28,540 --> 00:17:32,170 কিন্তু পূর্ণসংখ্যার একটি অ্যারের সাথে, প্রতিটি বক্স যাতে চার বাইট করা হয়েছে 352 00:17:32,170 --> 00:17:34,060 একটি সম্পূর্ণ পূর্ণসংখ্যা মাপসই. 353 00:17:34,060 --> 00:17:37,197 তাই এই কি একটি অ্যারের চার, ints মত দেখাবে. 354 00:17:37,197 --> 00:17:40,510 355 00:17:40,510 --> 00:17:43,870 >> এবং তারপর ফিরে কোড. 356 00:17:43,870 --> 00:17:47,460 এখন আমরা আসলে সঞ্চয় করতে চান যে অ্যারের মধ্যে পূর্ণসংখ্যার. 357 00:17:47,460 --> 00:17:53,470 তাই এখন এই একটি খুব, খুব, খুব হয় কিছু সময়ে যে অভিন্ন প্যাটার্ন 358 00:17:53,470 --> 00:17:54,680 পেশী মেমরির হয়ে. 359 00:17:54,680 --> 00:17:56,710 তাই আমি 0 সমান int-. 360 00:17:56,710 --> 00:17:57,940 আমি এন কম. 361 00:17:57,940 --> 00:18:01,850 আমি প্লাস প্লাস. 362 00:18:01,850 --> 00:18:05,790 বয়স বন্ধনী আমি GetInt সমান. 363 00:18:05,790 --> 00:18:15,100 >> তাই এই লুপ জন্য, এই বিন্যাসে, আপনি খুব ব্যবহার করতে হবে. 364 00:18:15,100 --> 00:18:20,010 তাই এই সাধারণত হয় কিভাবে আমরা আমাদের কাজ করি প্রায় কোনো অ্যারের পুনরুক্তি. 365 00:18:20,010 --> 00:18:23,690 এখন এই সাজানোর লক্ষ্য শুরু থেকে ব্যাখ্যা দিয়েছে কেন 366 00:18:23,690 --> 00:18:29,870 আমরা loops int জন্য যাওয়ার জন্য আছে না আমি কম বা 10 সমান, 1 সমান. 367 00:18:29,870 --> 00:18:34,200 থেকে শুরু হচ্ছে যে কারণে শূন্য অ্যারে সঙ্গে এই কাজ করে তোলে. 368 00:18:34,200 --> 00:18:36,270 সুতরাং অ্যারে সূচীবদ্ধ শূন্য হয়. 369 00:18:36,270 --> 00:18:40,360 এই অ্যারের দৈর্ঘ্য 4 থেকে হয়ে থাকে, সূচকের 3 মাধ্যমে 0 হয়. 370 00:18:40,360 --> 00:18:42,880 >> প্রথম মাধ্যমে তাই লুপ জন্য এই পুনরাবৃত্তির 371 00:18:42,880 --> 00:18:49,930 আমরা বয়স নির্ধারণের হতে যাচ্ছেন GetInt একটি কল সমান বন্ধনী 0. 372 00:18:49,930 --> 00:18:52,440 তাই আমি ঘটেছে যাই হোক না কেন কীবোর্ড এ প্রবেশ করতে হবে. 373 00:18:52,440 --> 00:18:56,970 দ্বিতীয় পাস, আমরা করছি GetInt করতে age1 সমান সেটিং. 374 00:18:56,970 --> 00:18:58,230 তৃতীয় পাস, age2. 375 00:18:58,230 --> 00:18:59,880 চূড়ান্ত পাস age3. 376 00:18:59,880 --> 00:19:05,750 লুপ প্রতিশ্রুতি সেই প্রথম সময়টি যদি তাই আমি কীবোর্ড এ সংখ্যা 4 লিখুন 377 00:19:05,750 --> 00:19:07,740 তারপর আমরা এখানে একটি 4 সন্নিবেশ করব. 378 00:19:07,740 --> 00:19:11,470 আমি লিখতে দ্বিতীয় পাস হলে 50 আমরা এখানে একটি 50 করা হবে. 379 00:19:11,470 --> 00:19:15,180 তৃতীয় পাস আমি বল প্রবেশ 1 নেতিবাচক, 1 নেতিবাচক, 380 00:19:15,180 --> 00:19:21,810 এবং তারপর অবশেষে আমি 0-- লিখতে হলে এখন এই সূচক তিন ছিল যে মনে. 381 00:19:21,810 --> 00:19:25,350 >> আমরা লুপ ফিরে পরে, আমি হয় যাচ্ছে 4 মান বৃদ্ধি করা. 382 00:19:25,350 --> 00:19:27,770 আমি আর 4, যা এন, কম হয়. 383 00:19:27,770 --> 00:19:29,840 আর আমরা লুপ আউট বিরতি. 384 00:19:29,840 --> 00:19:32,578 তাই এই সমস্যা টা কি হবে? 385 00:19:32,578 --> 00:19:38,140 386 00:19:38,140 --> 00:19:38,729 [শ্রবণাতীত]? 387 00:19:38,729 --> 00:19:39,604 শ্রোতা: [শ্রবণাতীত] 388 00:19:39,604 --> 00:19:45,880 389 00:19:45,880 --> 00:19:46,400 >> হ্যাঁ. 390 00:19:46,400 --> 00:19:51,550 সুতরাং অ্যারের মাত্র চারটি জায়গা আছে, যা 3 দিয়ে সূচকের 0 হিসাবে মানে. 391 00:19:51,550 --> 00:19:55,630 এই ক্ষেত্রে ছিল না, আমি তাই কিছু সময়ে মান 4 নিতে. 392 00:19:55,630 --> 00:20:00,910 বয়স বন্ধনী 4 সেটিং হবে যাই হোক না কেন এখানে হতে হবে 393 00:20:00,910 --> 00:20:02,920 আমি বলার আছে কি করতে, 6 লিখতে. 394 00:20:02,920 --> 00:20:05,010 যে 6 এই সেটিং করা হবে. 395 00:20:05,010 --> 00:20:06,560 >> কিন্তু আমরা এখানে ধরে কি না জানি না. 396 00:20:06,560 --> 00:20:08,836 এই মেমরি নয় যে আমরা এক্সেস করা ছিল. 397 00:20:08,836 --> 00:20:10,710 তাই আপনার কাছ থেকে মনে হলে পূর্ববর্তী বক্তৃতা, 398 00:20:10,710 --> 00:20:14,350 তিনি, Zamyla মান মুদ্রণ ছিল এবং কিছু সময়ে তিনি এই সেগমেন্টেশন আঘাত 399 00:20:14,350 --> 00:20:17,990 দোষ. সুতরাং আপনি সম্ভবত দেখা হবে আপনি হিসাবে অনেক সেগমেন্টেশন ফল্ট 400 00:20:17,990 --> 00:20:20,530 সমস্যা সেট কিছু বাস্তবায়ন. 401 00:20:20,530 --> 00:20:24,950 কিন্তু এই এক উপায় যা আপনি একটি সেগমেন্টেশন দেখা দিতে পারে 402 00:20:24,950 --> 00:20:28,540 আপনি ব্যবহার করতে শুরু করেন, তখন দোষ আপনি করা উচিত হবে না যে উপায়ে মেমরি. 403 00:20:28,540 --> 00:20:34,117 সুতরাং আমরা এক্সেস আছে কি না এই অবস্থান এবং এই একটি বাগ সংশোধন করা হয়. 404 00:20:34,117 --> 00:20:37,760 405 00:20:37,760 --> 00:20:40,190 >> তাই এই ভাল. 406 00:20:40,190 --> 00:20:45,820 এখন এখনও একটি ছোট নেই এই কোডটা দিয়ে ইস্যু. 407 00:20:45,820 --> 00:20:50,720 এবং যে আমরা যে মূলত এখনও চার ছাত্র আটকে. 408 00:20:50,720 --> 00:20:52,940 এখন মনে হচ্ছে আমি ঠিকই, আট ছাত্র ব্যবহার করতে চান তাহলে. 409 00:20:52,940 --> 00:20:54,350 এটা যে বড় একটি চুক্তি না. 410 00:20:54,350 --> 00:20:58,120 আমি পরিবর্তন, এ যেতে পারেন মন্তব্য, এবং এন পরিবর্তন. 411 00:20:58,120 --> 00:20:59,760 এখন এই আট ছাত্রদের সঙ্গে কাজ করবে. 412 00:20:59,760 --> 00:21:02,190 আমি এই কম্পাইল ও রান করে এই, এটা ভগবন্ দেখাবে 413 00:21:02,190 --> 00:21:07,870 এটা আট জন্য ইন্টিজার অনুরোধ করবে ছাত্র এবং এটা ঠিক কাজ হবে. 414 00:21:07,870 --> 00:21:11,850 কিন্তু এটা প্রয়োজন আদর্শ কম প্রোগ্রাম প্রতি একক সময় পুনরায় কম্পাইল 415 00:21:11,850 --> 00:21:15,960 আমি ছাত্র সংখ্যা পরিবর্তন করতে চান আমি বয়সের প্রবেশ করতে চান. 416 00:21:15,960 --> 00:21:22,990 >> তাই চূড়ান্ত উন্নতি আমরা এখানে দেখতে পাবেন এই, আমরা করছি 417 00:21:22,990 --> 00:21:26,177 মানুষের সংখ্যা অনুরোধ করা যাচ্ছে. 418 00:21:26,177 --> 00:21:28,010 এখানে আমরা একটি সংখ্যা আছে আসরে মানুষের 419 00:21:28,010 --> 00:21:29,880 বা রুমে মানুষ কোন বয়সের. 420 00:21:29,880 --> 00:21:33,300 কিন্তু আমরা সংখ্যা অনুরোধ করতে যাচ্ছেন ব্যবহারকারী থেকে রুমে মানুষ. 421 00:21:33,300 --> 00:21:36,171 তাই এই সঠিক একই কাজ যখন হয় আমরা আগে দেখা করেছি যে লুপ. 422 00:21:36,171 --> 00:21:37,920 এটা সঠিক একই কাজ যখন লুপ যে আপনি 423 00:21:37,920 --> 00:21:40,050 সমস্যা সেট উপর প্রয়োগ করা যেতে পারে. 424 00:21:40,050 --> 00:21:43,102 সুতরাং যতদিন তারা করছি 1 আর একটি এন কম লিখে, 425 00:21:43,102 --> 00:21:45,310 তাই এ হতে সেখানে পেয়েছিলাম রুমে কমপক্ষে এক ব্যক্তি. 426 00:21:45,310 --> 00:21:47,407 যতদিন তারা হিসাবে 1 আর একটি এন কম লিখে, 427 00:21:47,407 --> 00:21:48,990 তারপর আমরা আবার জিজ্ঞাসা রাখা চলুন. 428 00:21:48,990 --> 00:21:50,906 নাম্বার লিখুন রুমে মানুষ. 429 00:21:50,906 --> 00:21:53,550 এখন, একবার আমরা সংখ্যা আছে room-- মানুষের 430 00:21:53,550 --> 00:21:58,020 তাই আমি সেখানে যে লিখতে পারে এই রুমে 200 জনের হয়. 431 00:21:58,020 --> 00:22:05,480 তারপর এখানে আমরা নিচে আসতে যাচ্ছেন এবং আকার 200 একটি অ্যারের ঘোষণা. 432 00:22:05,480 --> 00:22:10,220 আমরা যে অ্যারে ঘোষণা করছি বড় যথেষ্ট 200 বয়সের রাখা. 433 00:22:10,220 --> 00:22:15,370 নেমে আসছে, এটি লুপ জন্য আপনি খুব ব্যবহার করতে হবে. 434 00:22:15,370 --> 00:22:19,490 তাই এই অ্যারে উপর iterating, প্রতিটি পাঁচ বরাদ্দ 435 00:22:19,490 --> 00:22:23,020 যে অ্যারের মধ্যে একটি পূর্ণসংখ্যা, এবং তারপর শেষ পর্যন্ত আমরা এখানে আছেন 436 00:22:23,020 --> 00:22:28,340 শুধু iterating একটি উদাহরণ পেয়ে যে অ্যারের উপর, মান নির্ধারণ করা না, 437 00:22:28,340 --> 00:22:30,150 কিন্তু মান ব্যবহার করতে. 438 00:22:30,150 --> 00:22:33,810 >> এখানে ওভার সুতরাং আমরা দেখতে আমরা যে এখন থেকে এক বছর, বলছে, 439 00:22:33,810 --> 00:22:40,470 ব্যক্তি% আমি বছর বয়সী% হতে হবে প্রথম% আমি প্লাস 1 যেখানে. 440 00:22:40,470 --> 00:22:43,010 তাই আমি এই সূচক পরিবর্তনশীল. 441 00:22:43,010 --> 00:22:49,420 আর দ্বিতীয়% আমি হতে যাচ্ছে বয়সের অ্যারে প্লাস 1 মান সঞ্চিত. 442 00:22:49,420 --> 00:22:54,217 সুতরাং এই প্লাস 1 আমরা মাত্র কারণ হল , এই প্লাস 1 বলছে বয়সের আমি প্লাস 1. 443 00:22:54,217 --> 00:22:57,050 এই প্লাস 1 আমরা মাত্র কারণ হল এখন ব্যক্তি থেকে একটি বছর, বলার অপেক্ষা রাখে না 444 00:22:57,050 --> 00:22:58,280 এই বয়সী হতে হবে. 445 00:22:58,280 --> 00:23:01,080 >> সুতরাং কেন এই আমি প্লাস 1? 446 00:23:01,080 --> 00:23:04,064 কেন আমরা একটি প্লাস 1 আছে? 447 00:23:04,064 --> 00:23:04,564 হ্যা. 448 00:23:04,564 --> 00:23:07,410 449 00:23:07,410 --> 00:23:07,930 হ্যাঁ. 450 00:23:07,930 --> 00:23:10,510 সুতরাং অ্যারে শূন্য ইন্ডেক্স মনে. 451 00:23:10,510 --> 00:23:14,840 আমরা এই মুদ্রণ করা হয় তাই আপনি যদি কেউ শুধু আউটপুট পড়তে, 452 00:23:14,840 --> 00:23:19,380 তারপর সম্ভবত তারা কিছু দেখতে চান ব্যক্তি এক ব্যক্তির সংখ্যা এক মত, 453 00:23:19,380 --> 00:23:21,160 20 বছর বয়সী হতে হবে. 454 00:23:21,160 --> 00:23:23,570 ব্যক্তি দুই নম্বর 15 বছর বয়সী হতে হবে. 455 00:23:23,570 --> 00:23:27,420 তারা বরং ব্যক্তি দেখতে না চাই সংখ্যা শূন্য 15 বছর বয়সী. 456 00:23:27,420 --> 00:23:36,460 >> সুতরাং এই কম্পাইল এবং শুধু এইজন্য কি এটা কিছু স্থান তৈরি করার মত দেখায়. 457 00:23:36,460 --> 00:23:43,560 বয়সের প্রনয়ন করুন. 458 00:23:43,560 --> 00:23:45,080 বয়সের চালনা. 459 00:23:45,080 --> 00:23:46,580 আমরা রুমে মানুষের সংখ্যা দেখতে. 460 00:23:46,580 --> 00:23:48,850 তাই আমি আছে বলবো রুমে তিন জনের. 461 00:23:48,850 --> 00:23:54,000 ব্যক্তির সংখ্যা এক বছর বয়স, এর 15, 20, 25 বলা যাক. 462 00:23:54,000 --> 00:23:59,680 এবং এখন আমি একটি বছর থেকে বলবো এখন তারা 16, 21, 26 হতে হবে. 463 00:23:59,680 --> 00:24:02,900 এর এই সঙ্গে কাজ করে দেখতে দিন 3 সমান নয় যে একটি এন. 464 00:24:02,900 --> 00:24:07,940 যদি তাই আমি মানুষের সংখ্যা, এক 5 বলে দুই, তিন, দুই, এক, এখন থেকে বছরে 465 00:24:07,940 --> 00:24:11,170 তারা, দুই, তিন হবেন চার, তিন, দুই বছর বয়সী. 466 00:24:11,170 --> 00:24:16,500 তাই আমি ঠিক যেমন পারা সহজেই এন 10,000 হতে হয়েছে. 467 00:24:16,500 --> 00:24:21,270 এখন আমি বেশ জন্য এখানে বসা হবে কিছুদিনের বয়সের লিখে, কিন্তু এই কাজ করে. 468 00:24:21,270 --> 00:24:26,000 >> তাই এখন কোথাও মেমরি আমরা , আকার 10,000 একটি অ্যারে আছে 469 00:24:26,000 --> 00:24:28,830 তাই শেষ পর্যন্ত 40,000 বাইট, আছে, কারণ 470 00:24:28,830 --> 00:24:31,222 যারা পূর্ণসংখ্যার প্রতিটি জন্য চার বাইট. 471 00:24:31,222 --> 00:24:33,180 সুতরাং একটি অ্যারের আছে আকার 10,000 যেখানে আমরা 472 00:24:33,180 --> 00:24:36,201 ঐ 10,000 মানুষের বয়সের সংরক্ষণ. 473 00:24:36,201 --> 00:24:36,700 ঠিক আছে. 474 00:24:36,700 --> 00:24:40,070 এই সম্পর্কে কোন প্রশ্ন? 475 00:24:40,070 --> 00:24:41,892 হ্যা. 476 00:24:41,892 --> 00:24:43,350 আপনি কি একটি ঋণাত্মক সংখ্যা দিয়েছেন তাহলে? 477 00:24:43,350 --> 00:24:44,870 এর কি দেখতে দিন. 478 00:24:44,870 --> 00:24:49,320 এই বিশেষ ক্ষেত্রেই সংখ্যায় তাই রুম, নেতিবাচক এক মানুষের. 479 00:24:49,320 --> 00:24:52,580 এটা যে প্রত্যাখ্যাত, এখানে আপ আমরা ঘটতে কারণ 480 00:24:52,580 --> 00:24:57,180 যদি n যে হ্যান্ডলিং করা কম একটির আমরা আবার জিজ্ঞাসা করতে যাচ্ছেন. 481 00:24:57,180 --> 00:25:01,780 আপনি কি চান একজন ডিক্লেয়ার করার চেষ্টা করলে নেতিবাচক আকারের অ্যারে, 482 00:25:01,780 --> 00:25:03,950 এটি সাধারণত কাজ করে না. 483 00:25:03,950 --> 00:25:05,570 >> সুতরাং এর চেষ্টা করা যাক. 484 00:25:05,570 --> 00:25:08,000 এর থেকেও দূরে যাই হোক না কেন এন জন্য মূল্য তারা ইনপুট 485 00:25:08,000 --> 00:25:10,571 এবং শুধুমাত্র int বয়সের নেতিবাচক এক বলে. 486 00:25:10,571 --> 00:25:12,410 এটা এমনকি প্রনয়ন তাহলে চলুন দেখা যাক. 487 00:25:12,410 --> 00:25:14,100 আমি নিশ্চিত না. 488 00:25:14,100 --> 00:25:14,920 না. 489 00:25:14,920 --> 00:25:18,280 তাই বয়সের একটি হিসাবে ঘোষণা করা হয় একটি নেতিবাচক আকার সঙ্গে অ্যারে. 490 00:25:18,280 --> 00:25:22,540 সুতরাং আপফ্রন্ট এটা একটি অ্যারের পারবেন না স্বীকার নেতিবাচক আকারের হবে এবং তা প্রত্যাখ্যান করে. 491 00:25:22,540 --> 00:25:26,840 এখন, আমরা হ্যান্ডেল করা হয়নি তাহলে এই কাজের জন্য সময় লুপ সঠিকভাবে, 492 00:25:26,840 --> 00:25:28,810 আমরা চেক না হলে এন কম 1 টি যদি 493 00:25:28,810 --> 00:25:32,690 আসুন আমরা শুধু বলা যাক এ সব এই আছে কি না 494 00:25:32,690 --> 00:25:35,940 এবং এর পরিবর্তে আমরা শুধু একটি পূর্ণসংখ্যা দখল. 495 00:25:35,940 --> 00:25:40,710 কোন ব্যাপার যে পূর্ণসংখ্যা কি, আমরা যে আকারের একটি অ্যারে ডিক্লেয়ার. 496 00:25:40,710 --> 00:25:44,250 >> সুতরাং কম্পাইলার না পারেন সম্ভবত এখন অভিযোগ. 497 00:25:44,250 --> 00:25:48,780 আমি আপাততঃ সঙ্কলন তাই এটা অভিযোগ করতে পারবেন না, 498 00:25:48,780 --> 00:25:51,480 এটা আমি জানি যে পারে না, কারণ একটি ঋণাত্মক সংখ্যা লিখুন যাচ্ছে, 499 00:25:51,480 --> 00:25:52,550 যা অবৈধ হতে পারে. 500 00:25:52,550 --> 00:25:54,633 সব জন্য এটা আমি বল, জানে একটি ধনাত্মক সংখ্যা লিখুন, 501 00:25:54,633 --> 00:25:56,000 যা পুরোপুরি বৈধ. 502 00:25:56,000 --> 00:26:01,090 আমি 1 নেতিবাচক লিখতে যদি তাই আমি কল্পনা রুমে মানুষ, দোষ সেগমেন্টেশন. 503 00:26:01,090 --> 00:26:06,040 >> তাই ঠিক. 504 00:26:06,040 --> 00:26:13,160 তাই আসুন এই মাত্র ফিরে যোগ দিন মূলত এটি ছিল কি এটা রাখা. 505 00:26:13,160 --> 00:26:15,640 তাই বয়সের করতে. 506 00:26:15,640 --> 00:26:18,120 এখন আমি একটি চেষ্টা করে দেখতে চান তাহলে নেতিবাচক তাই আসুন age-- 507 00:26:18,120 --> 00:26:19,710 রুমে পাঁচটি মানুষ আছে বলে. 508 00:26:19,710 --> 00:26:23,180 ব্যক্তির সংখ্যা এক বছর বয়স , ব্যক্তি তিনটি নেতিবাচক 4 509 00:26:23,180 --> 00:26:26,500 শূন্য, ব্যক্তি ঠিক আছি-- হয়. 510 00:26:26,500 --> 00:26:29,850 তাই এখানে, একটি বছর এখন থেকে, ব্যক্তি সংখ্যা এক 3 বছর বয়সী নেতিবাচক হবে. 511 00:26:29,850 --> 00:26:32,830 তাই সম্ভবত অর্থে দেখা যায় না. 512 00:26:32,830 --> 00:26:37,220 কিন্তু যে শুধু খুঁজছি কারণ কোড এ সব আমরা করছেন 513 00:26:37,220 --> 00:26:40,260 GetInt চাইছে. 514 00:26:40,260 --> 00:26:44,110 >> এখন, আমরা হত GetPositiveInt ফাংশন 515 00:26:44,110 --> 00:26:49,690 বা আমরা শুধু শুধু এই কাজ করেছিলেন নিচে আছে একই সময় লুপ সাজান, 516 00:26:49,690 --> 00:26:52,340 তারপর এই পুরোপুরি সূক্ষ্ম কাজ করবে. 517 00:26:52,340 --> 00:26:54,200 কিন্তু এই বিশেষ যদি আমরা ঠিক না 518 00:26:54,200 --> 00:26:57,772 নেতিবাচক মান হ্যান্ডলিং হতে ঘটবে. 519 00:26:57,772 --> 00:26:59,147 অ্যারে সম্পর্কে অন্য কোন প্রশ্ন? 520 00:26:59,147 --> 00:27:02,290 521 00:27:02,290 --> 00:27:03,250 ঠিক আছে. 522 00:27:03,250 --> 00:27:09,380 >> সুতরাং আমরা এখন অ্যারে দেখা করেছি. 523 00:27:09,380 --> 00:27:12,500 এবং আমরা ব্যবহার করতে প্রয়োজন চলুন কমান্ড লাইন আর্গুমেন্ট জন্য এই. 524 00:27:12,500 --> 00:27:14,680 সুতরাং সমস্যা two-- সেট আমি জানি আপনি অনেক 525 00:27:14,680 --> 00:27:18,040 এখনও সমস্যা সেটে কাজ করা যেতে পারে এক, কিন্তু সমস্যা হল দুটি উত্ক্রান্ত সেট. 526 00:27:18,040 --> 00:27:22,260 সমস্যা দুই সেট, আপনি যাচ্ছেন স্ট্রিং, অ্যারে সাথে ডিল করা প্রয়োজন, 527 00:27:22,260 --> 00:27:23,950 এবং কমান্ড লাইন আর্গুমেন্ট. 528 00:27:23,950 --> 00:27:26,270 >> কমান্ড লাইন আর্গুমেন্ট তাই কি হয়? 529 00:27:26,270 --> 00:27:29,570 এখন, আপনি এখানে একটি ডাউন দেখতে পারেন ঠিক কি জন্য একটু টিজার 530 00:27:29,570 --> 00:27:30,950 যাচ্ছে ঘটছে করা. 531 00:27:30,950 --> 00:27:32,950 আমরা, int প্রধান, Inc-argc দেখতে স্ট্রিং argv বন্ধনী. 532 00:27:32,950 --> 00:27:34,560 533 00:27:34,560 --> 00:27:38,130 সুতরাং প্রথম এর ব্যাখ্যা করার চেষ্টা করা যাক কি বলতে চায়. 534 00:27:38,130 --> 00:27:40,800 এখন ঠিক আছে. 535 00:27:40,800 --> 00:27:44,637 >> তাই কমান্ড লাইনে আপনি হওয়া উচিত এই কমান্ডের কিছু ব্যবহার করা হচ্ছে 536 00:27:44,637 --> 00:27:48,580 এখন, এবং আপনি সম্ভবত রান করেছি আগে টার্মিনালে সিডি. 537 00:27:48,580 --> 00:27:52,100 সুতরাং আমরা সিডি pset1 যদি বলি, আপনি যে উচিত না 538 00:27:52,100 --> 00:27:55,050 pset1 ডিরেক্টরির মধ্যে পরিবর্তন হতে. 539 00:27:55,050 --> 00:27:59,120 >> এখন আপনি না করেছি যে লক্ষ্য আগে ভালো একটি প্রোগ্রাম লেখা. 540 00:27:59,120 --> 00:28:03,120 আপনি লিখিত করেছি যে প্রতিটি প্রোগ্রামের আপনি, বলুন, চালানো হবে মারিও বিন্দু স্ল্যাশ, 541 00:28:03,120 --> 00:28:06,779 ডট লোভী কাট, এবং তারপর এটি ইনপুট জন্য অনুরোধ জানানো হতে পারে. 542 00:28:06,779 --> 00:28:08,570 এখন, যে না কি পরিবর্তনের তালিকা আছে. 543 00:28:08,570 --> 00:28:12,770 আপনি সিডি চালানো, তখন বলে, না আপনি সিডি থেকে যা ডিরেক্টরির মধ্যে চাও? 544 00:28:12,770 --> 00:28:17,200 পরিবর্তে, আপনি শুধু বলতে, সিডি pset1, এবং এটা যাক pset1 ডিরেক্টরির মধ্যে যায়. 545 00:28:17,200 --> 00:28:20,430 >> সুতরাং একইভাবে আমরা অন্যান্য উদাহরণ আছে. 546 00:28:20,430 --> 00:28:21,540 হ্যালো করতে. 547 00:28:21,540 --> 00:28:25,760 আপনি করতে চালানোর জন্য, এটা তাহলে, বলে না যা প্রোগ্রাম আপনাকে করতে চাই? 548 00:28:25,760 --> 00:28:29,620 আপনি শুধু এ, বলতে কমান্ড লাইন থেকে ব্যবহারযোগ্য হ্যালো করতে. 549 00:28:29,620 --> 00:28:31,060 >> সরান আরেকটি উদাহরণ. 550 00:28:31,060 --> 00:28:34,840 আমরা চলন্ত হয় এই এক এক ডিরেক্টরি আপ ফাইল mario.c. 551 00:28:34,840 --> 00:28:38,060 তাই এখন আমরা এই উদাহরণ দিয়ে জানি আমরা সত্যিই দুটি আর্গুমেন্ট পার করছি. 552 00:28:38,060 --> 00:28:42,090 প্রথম আর্গুমেন্ট হিসাবে mario.c আছে, এবং ডট ডট দ্বিতীয় প্রমাণ. 553 00:28:42,090 --> 00:28:46,140 এবং তারপর আপনি করতে চালানোর যে সত্যিই দীর্ঘ কমান্ড দেখতে লাইনে 554 00:28:46,140 --> 00:28:50,580 যে সত্যিই দীর্ঘ কমান্ড কমান্ড লাইন থেকে মুদ্রিত. 555 00:28:50,580 --> 00:28:53,590 সুতরাং যে দীর্ঘ এই কমান্ড এটা শুধু একটি সংক্ষিপ্ত অংশ, 556 00:28:53,590 --> 00:28:56,090 কিন্তু এখন আমরা তিন আছে কমান্ড লাইন আর্গুমেন্ট. 557 00:28:56,090 --> 00:28:59,750 ডট ড্যাশ শূন্য, হ্যালো, এবং, hello.c. 558 00:28:59,750 --> 00:29:03,497 >> সুতরাং এই কমান্ড-লাইন তর্ক 559 00:29:03,497 --> 00:29:05,580 আপনি এ পার করছি যে কমান্ড লাইন, যাতে এটা 560 00:29:05,580 --> 00:29:08,680 অনুরোধ করা হবে নেই আপনি যখন প্রোগ্রাম চালানো. 561 00:29:08,680 --> 00:29:13,090 এটা হতাশাজনক হতে হবে যখন যদি আপনি ঝনঝন করা চলে এটা ঠিক আছে ", বলেন 562 00:29:13,090 --> 00:29:15,630 প্রোগ্রামটিতে যা যা ফাইল আপনি কম্পাইল করা হয়? 563 00:29:15,630 --> 00:29:17,010 Hello.c. 564 00:29:17,010 --> 00:29:19,440 কী পতাকা আপনি would লিখতে চান? ড্যাশ হে. 565 00:29:19,440 --> 00:29:21,190 তোমার কী পছন্দ ফাইল করা হবে নামক? 566 00:29:21,190 --> 00:29:21,690 হ্যালো. 567 00:29:21,690 --> 00:29:25,290 না, আপনি শুধু ঝনঝন চালানো হে hello.c হ্যালো ড্যাশ. 568 00:29:25,290 --> 00:29:28,820 >> তাই ফিরে এই সময়ে খুঁজছেন. 569 00:29:28,820 --> 00:29:32,920 এখন argc-- argc হয় যুক্তি গন্য হয়. 570 00:29:32,920 --> 00:29:36,620 এটা কমান্ড-লাইনের সংখ্যা আর্গুমেন্ট কমান্ড লাইনে প্রবেশ. 571 00:29:36,620 --> 00:29:39,720 ওয়েল, টেকনিক্যালি argv-- V, ভেক্টর ঘোরা 572 00:29:39,720 --> 00:29:41,460 যা মূলত অ্যারের মানে. 573 00:29:41,460 --> 00:29:42,680 কিন্তু আপনি যে উপেক্ষা করতে পারেন. 574 00:29:42,680 --> 00:29:47,540 Argv-- আমরা স্ট্রিং argv আছে তাই স্ট্রিং argv বন্ধনী. 575 00:29:47,540 --> 00:29:50,150 সুতরাং এই অন্য ফর্ম আপনি আগে দেখা যায় নি বন্ধনী. 576 00:29:50,150 --> 00:29:52,300 সুতরাং আমরা দেখা করেছি বন্ধনী আমরা আগেই বলেছি যখন স্বরলিপি, 577 00:29:52,300 --> 00:29:53,970 মত, স্ট্রিং গুলি, Zamyla সমান. 578 00:29:53,970 --> 00:29:56,910 গুলি বন্ধনী 0 চরিত্র জেড ব্যবহারের 579 00:29:56,910 --> 00:30:00,720 >> আমরা বন্ধনী যখন দেখা করেছি আমরা int বয়সের 5 বন্ধনী বলেন. 580 00:30:00,720 --> 00:30:03,160 যে আকার 5 একটি অ্যারের ঘোষণা. 581 00:30:03,160 --> 00:30:06,280 তাই এখানে একটি সংস্করণ বন্ধনী আমরা আগে দেখা যায় নি. 582 00:30:06,280 --> 00:30:09,630 স্ট্রিং argv তাই এই ধরণের যে সম্পূর্ণরূপে পরিচিত হতে হবে 583 00:30:09,630 --> 00:30:12,050 এটা শুধু একটি স্ট্রিং হবে. 584 00:30:12,050 --> 00:30:14,520 এখন বন্ধনী নির্দেশ যে এই একটি অ্যারে. 585 00:30:14,520 --> 00:30:19,920 তাই স্ট্রিং argv বন্ধনী মানে যে argv স্ট্রিং একটি অ্যারে. 586 00:30:19,920 --> 00:30:22,540 এখন টেকনিক্যালি একটি স্ট্রিং অক্ষরের একটি অ্যারে. 587 00:30:22,540 --> 00:30:26,400 সুতরাং এখন এই একটি অ্যারে অক্ষরের একটি অ্যারের. 588 00:30:26,400 --> 00:30:31,490 কিন্তু এটা আমার মনে হয় অনেক সহজ স্ট্রিং এই হিসাবে শুধু একটি অ্যারের. 589 00:30:31,490 --> 00:30:34,900 >> সুতরাং কেন বন্ধনী খালি হতে পারে? 590 00:30:34,900 --> 00:30:38,170 ভালো লেগেছে, আমরা কেন, বলতে পারবেন না বন্ধনী 5, বন্ধনী এন? 591 00:30:38,170 --> 00:30:40,700 592 00:30:40,700 --> 00:30:41,200 হ্যা. 593 00:30:41,200 --> 00:30:43,731 594 00:30:43,731 --> 00:30:44,230 হ্যা. 595 00:30:44,230 --> 00:30:46,396 আমরা কতজন জানি না ইনপুট হতে যাচ্ছি. 596 00:30:46,396 --> 00:30:53,560 সুতরাং আমরা ঝনঝন উদাহরণ তাকান তাহলে, আমরা hello.c হ্যালো হে Dash ঝনঝন বলে. 597 00:30:53,560 --> 00:30:56,710 এই বিশেষ ক্ষেত্রে, সেখানে ঘটবে তিনটি কমান্ড লাইন আর্গুমেন্ট হতে. 598 00:30:56,710 --> 00:31:00,522 আর তাই brackets-- আমরা দেখতে পাবেন একটি দ্বিতীয় মধ্যে এটি তিনটি হবে না. 599 00:31:00,522 --> 00:31:01,730 এটা টেকনিক্যালি চার হবে. 600 00:31:01,730 --> 00:31:04,030 কিন্তু বন্ধনী, আমরা বলুন, তিনটি আছে. 601 00:31:04,030 --> 00:31:08,220 কিন্তু এখন আমরা পদক্ষেপ দিকে তাকিয়ে যদি mario.c ডট ডট, বন্ধনী 602 00:31:08,220 --> 00:31:09,760 আমরা তাদের মধ্যে দুই রাখতে চায়. 603 00:31:09,760 --> 00:31:12,884 >> এবং কমান্ড অনেক আছে কমান্ড লাইন থেকে ব্যবহারযোগ্য একটি পরিবর্তনশীল সংখ্যা আছে 604 00:31:12,884 --> 00:31:13,620 আর্গুমেন্ট. 605 00:31:13,620 --> 00:31:17,430 তাই কি এই সংস্করণ বন্ধনী স্বরলিপি ইঙ্গিত 606 00:31:17,430 --> 00:31:20,820 argv স্ট্রিং একটি অ্যারে হয়. 607 00:31:20,820 --> 00:31:24,360 কিন্তু আমরা কতজন জানি না স্ট্রিং যে অ্যারের মধ্যে হয়. 608 00:31:24,360 --> 00:31:27,090 আর কীভাবে আমরা তারপর কিভাবে জানি না অনেক পংক্তি অ্যারের মধ্যে আছে? 609 00:31:27,090 --> 00:31:28,870 যে সমগ্র বিন্দু argc এর. 610 00:31:28,870 --> 00:31:32,300 argc, argv হয় কতদিন আমাদেরকে বলে. 611 00:31:32,300 --> 00:31:36,500 >> তাই শেষ জিনিস রাখা মন, যে টেকনিক্যালি হয় 612 00:31:36,500 --> 00:31:40,820 কমান্ড নিজেই এক হিসাবে গণ্য কমান্ড-লাইন আর্গুমেন্ট. 613 00:31:40,820 --> 00:31:45,330 সিডি pset1 সুতরাং, দুই আছে কমান্ড লাইন আর্গুমেন্ট. 614 00:31:45,330 --> 00:31:50,260 নিজেই প্রোগ্রাম, সিডি, এবং তারপর এটা প্রকৃত যুক্তি অংশ, pset1. 615 00:31:50,260 --> 00:31:54,490 আপনি এখন পর্যন্ত লিখিত করেছি যে কোনো প্রোগ্রাম আর মাত্র একটি কমান্ড-লাইন argument-- ডট ফেলেছে 616 00:31:54,490 --> 00:31:55,320 মারিও কাট. 617 00:31:55,320 --> 00:31:57,350 যে শুধুমাত্র কমান্ড লাইন আর্গুমেন্ট হয়. 618 00:31:57,350 --> 00:32:00,900 >> তাই এখন ঝনঝন এ খুঁজছেন হে hello.c হ্যালো ড্যাশ. 619 00:32:00,900 --> 00:32:01,905 সুতরাং argc কি? 620 00:32:01,905 --> 00:32:05,260 621 00:32:05,260 --> 00:32:06,080 4. 622 00:32:06,080 --> 00:32:08,140 সুতরাং argc 4 হয়. 623 00:32:08,140 --> 00:32:12,140 ঝনঝন, তাই argv বন্ধনী 0 ঝনঝন হয়. 624 00:32:12,140 --> 00:32:15,630 argv বন্ধনী 1 Dash 0 হয়. 625 00:32:15,630 --> 00:32:21,870 argv বন্ধনী 2 হ্যালো হয়, এবং argv বন্ধনী 3 hello.c. 626 00:32:21,870 --> 00:32:26,813 ঠিক আছে, তাই এই প্রশ্ন, এবং তারপর আমরা করব কিছু কর্মসূচি উদাহরণ তাকান. 627 00:32:26,813 --> 00:32:29,460 628 00:32:29,460 --> 00:32:30,480 >> ঠিক আছে. 629 00:32:30,480 --> 00:32:36,260 সুতরাং আমরা hello3.c কটাক্ষপাত করব. 630 00:32:36,260 --> 00:32:41,890 সুতরাং এই থেকে পরিচিত হতে হবে প্রথম C উদাহরণ এক 631 00:32:41,890 --> 00:32:45,800 আমরা শুধু বলতে হবে যেখানে আমরা হ্যালো, ছিল বিশ্বের, কিন্তু এখন এই আরো সাধারণ হয়. 632 00:32:45,800 --> 00:32:52,300 তাই আমরা এখানে হ্যালো বলছে % এর ব্যাকস্ল্যাশ এন argv বন্ধনী 1. 633 00:32:52,300 --> 00:32:57,440 এই বিন্দু পর্যন্ত তাই বিজ্ঞপ্তি, এই হল কি আমার টেমপ্লেট ফাইল মত লাগছিল হয়েছে. 634 00:32:57,440 --> 00:33:01,800 আমি int প্রধান (অকার্যকর) ছিল, এবং তারপর আমি would প্রধান ফাংশন কিছু না. 635 00:33:01,800 --> 00:33:05,100 এখন পরিবর্তে, একবার আমরা আচরণ শুরু কমান্ড লাইন আর্গুমেন্ট সাথে, 636 00:33:05,100 --> 00:33:07,890 আমরা একটি রাষ্ট্র প্রয়োজন প্রধান বিভিন্ন ফর্ম. 637 00:33:07,890 --> 00:33:11,930 >> সুতরাং hello3 এ খুঁজছেন আবার প্রধান যাচ্ছে 638 00:33:11,930 --> 00:33:15,990 int-argc এখন আমি দুটি আর্গুমেন্ট গ্রহণ করা, কমান্ড লাইন আর্গুমেন্ট সংখ্যা, 639 00:33:15,990 --> 00:33:20,970 এবং স্ট্রিং বন্ধনী argv হয়, প্রকৃত স্ট্রিং কমান্ড লাইনে প্রবেশ. 640 00:33:20,970 --> 00:33:26,560 তাই আমি যে পরিবর্তন করা যাচ্ছে না টেমপ্লেট যে প্রতিফলিত. 641 00:33:26,560 --> 00:33:29,060 এখন যখনই আপনি লিখুন একটি প্রোগ্রাম, যদি আপনি না 642 00:33:29,060 --> 00:33:33,720 কোন কমান্ড লাইন নেওয়া প্রয়োজন আর্গুমেন্ট, তারপর শুধু int প্রধান (অকার্যকর) ব্যবহার. 643 00:33:33,720 --> 00:33:37,070 কিন্তু এখন আপনি লেখার যখন কমান্ড লাইন আর্গুমেন্ট প্রোগ্রাম, যা 644 00:33:37,070 --> 00:33:40,350 আপনি সমস্যার জন্য কাজ করা যাচ্ছে করছি তাই এখন আপনি চালাচ্ছেন যে two-- সেট 645 00:33:40,350 --> 00:33:42,630 নেওয়া প্রয়োজন যে প্রোগ্রাম কমান্ড লাইন আর্গুমেন্ট, 646 00:33:42,630 --> 00:33:45,250 আপনি এই ফর্মটি আবার প্রধান থাকতে হবে. 647 00:33:45,250 --> 00:33:51,290 >> তাই এখানে এই বড় ব্যবহার হয় কমান্ড লাইন আর্গুমেন্ট এর. 648 00:33:51,290 --> 00:33:54,100 সুতরাং argv 1 মুদ্রণ. 649 00:33:54,100 --> 00:33:59,180 ঠিক আছে, তাই এর কম্পাইল করা যাক এবং এই কর্মসূচি পরিচালনা করছে. 650 00:33:59,180 --> 00:34:02,440 Hello3 করুন. 651 00:34:02,440 --> 00:34:03,570 প্রনয়ন করেছেন. 652 00:34:03,570 --> 00:34:06,870 ডট hello3 কাট. 653 00:34:06,870 --> 00:34:08,920 আর এর বলা যাক, "রব." 654 00:34:08,920 --> 00:34:10,760 হ্যালো, রব. 655 00:34:10,760 --> 00:34:14,940 আমি "হ্যালো মারিয়া," হ্যালো মারিয়া যদি বলি. 656 00:34:14,940 --> 00:34:15,719 হ্যালো মারিয়া. 657 00:34:15,719 --> 00:34:18,639 হানা এখনও হ্যালো ", বলেছেন মারিয়া, "আমি নই, কারণ 658 00:34:18,639 --> 00:34:21,340 আমাদের argv 2 সঙ্গে কিছু করছেন. 659 00:34:21,340 --> 00:34:22,590 Argv 2 এখন "হানা." হতে হবে 660 00:34:22,590 --> 00:34:25,030 Argc 3 হবে. 661 00:34:25,030 --> 00:34:27,735 আমি কি এই না হলে? 662 00:34:27,735 --> 00:34:31,980 663 00:34:31,980 --> 00:34:34,679 তাই হ্যালো নাল. 664 00:34:34,679 --> 00:34:38,760 >> তিনি সংক্ষেপে আসলে ছোঁয়া যে, টেকনিক্যালি GetString, 665 00:34:38,760 --> 00:34:42,429 নাল আসতে পারে, কিন্তু আমরা একটি পাবেন আরো কি নাল মধ্যে অনেক আসলে. 666 00:34:42,429 --> 00:34:47,449 কিন্তু একটি বিষয় হিসেবে তা গ্রহণ কোন সাধারণত খারাপ যে. 667 00:34:47,449 --> 00:34:50,179 আমরা যদি কিছু ভুল করেছেন এটা "হ্যালো নাল." মুদ্রণ 668 00:34:50,179 --> 00:34:52,179 এবং কারণ আমরা করেনি হচ্ছে ÑÑ ভাল কিছু ভুল, 669 00:34:52,179 --> 00:34:56,179 আমি বিন্দু স্ল্যাশ hello3 দৌড়ে যখন argc হয় 1 ছিল. 670 00:34:56,179 --> 00:34:59,680 সুতরাং যে argv দৈর্ঘ্য ছিল 1 মানে. 671 00:34:59,680 --> 00:35:05,110 একটি অ্যারের দৈর্ঘ্য 1 থেকে হয়ে থাকে, শুধুমাত্র বৈধ সূচক শূন্য. 672 00:35:05,110 --> 00:35:08,550 আর তাই এখানে 1 বাইরে argv এই অ্যারের পরিসর. 673 00:35:08,550 --> 00:35:13,410 এটা আমি চেষ্টা হলে আগে অনুরূপ ছিল অ্যারে শেষে বাইরে 6 ধারণ করার. 674 00:35:13,410 --> 00:35:18,100 তাই আমি কিছু করার চেষ্টা করছি argv হয় স্থা বাইরে, 675 00:35:18,100 --> 00:35:21,340 এবং আমরা নাল পেয়ে থাকেন. 676 00:35:21,340 --> 00:35:24,360 >> তাই একটি ভাল সংস্করণ এটি একটি উন্নয়ন, 677 00:35:24,360 --> 00:35:27,010 স্পষ্টভাবে-argc চেক করা হয়. 678 00:35:27,010 --> 00:35:33,580 Argc, 2 সমান হলে, যে আমরা দৌড়ে মানে বিন্দু স্ল্যাশ hello3 রব মত কিছু. 679 00:35:33,580 --> 00:35:36,840 এবং এটা "হ্যালো, রব." প্রিন্ট হবে 680 00:35:36,840 --> 00:35:39,850 Argc, সমান না হলে 2, তারপর, এটা শুধু যাচ্ছে 681 00:35:39,850 --> 00:35:42,560 আপনি যাই হোক না কেন করা উপেক্ষা করা কমান্ড লাইন আর্গুমেন্ট এ 682 00:35:42,560 --> 00:35:43,960 কমান্ড লাইন আর্গুমেন্ট হিসাবে. 683 00:35:43,960 --> 00:35:47,168 আপনি সব সময়ে কোন করা হয়নি, বা, যদি এটা শুধু যে উপেক্ষা করে শুধু বলে যাচ্ছে, 684 00:35:47,168 --> 00:35:47,960 "ওহে তুমি." 685 00:35:47,960 --> 00:35:51,490 >> সুতরাং এই কম্পাইল. 686 00:35:51,490 --> 00:35:54,500 Hello4 করুন. 687 00:35:54,500 --> 00:35:56,790 আর hello4 চলমান. 688 00:35:56,790 --> 00:36:00,010 এটা এই ভাবে চলমান, কি করা উচিত মুদ্রিত? 689 00:36:00,010 --> 00:36:01,330 "ওহে তুমি." 690 00:36:01,330 --> 00:36:02,810 ওহে তুমি. 691 00:36:02,810 --> 00:36:05,870 কি hello4 রব সম্পর্কে? 692 00:36:05,870 --> 00:36:06,950 "হ্যালো, রব." 693 00:36:06,950 --> 00:36:10,580 এবং পরিশেষে, হ্যালো, রব মারিয়া , "হ্যালো আপনি" আবার ঠিক হয় 694 00:36:10,580 --> 00:36:13,677 আপনি কি সত্যিই লেখেননি কারণ এটা প্রত্যাশিত যে কিছু. 695 00:36:13,677 --> 00:36:15,510 আপনি আরো নাম প্রবেশ এটা ছাড়া হ্যান্ডেল করতে পারে, 696 00:36:15,510 --> 00:36:19,500 তাই এটা শুধু ডিফল্ট হ্যালো আপনি আচরণ. 697 00:36:19,500 --> 00:36:23,040 এই প্রশ্ন তাই? 698 00:36:23,040 --> 00:36:26,290 অথবা কমান্ড লাইন আর্গুমেন্ট? 699 00:36:26,290 --> 00:36:28,690 >> ঠিক আছে, তাই একটি কটাক্ষপাত গ্রহণ ব্যবহার করে দম্পতি আরো উদাহরণ 700 00:36:28,690 --> 00:36:34,230 কমান্ড-লাইন প্রথম আর্গুমেন্ট আমরা ড্যাশ 1 বিন্দু গ argv আছে. 701 00:36:34,230 --> 00:36:38,510 তাই মন্তব্য বিকান কি এই প্রোগ্রাম কাজ করা উচিত. 702 00:36:38,510 --> 00:36:42,460 কিন্তু, এই লুপ জন্য এখন আমি লক্ষ্য এই সঠিক প্যাটার্ন মিলে যায় 703 00:36:42,460 --> 00:36:43,390 আমি আগে বলছিলাম. 704 00:36:43,390 --> 00:36:46,240 আমরা শুধু হতে ঘটতে এন পরিবর্তে-argc ব্যবহার. 705 00:36:46,240 --> 00:36:48,880 এখন-argc সত্যিই এন হয়. 706 00:36:48,880 --> 00:36:51,260 এটা argv অ্যারে এর দৈর্ঘ্য. 707 00:36:51,260 --> 00:36:59,600 সুতরাং argv মাধ্যমে iterating অ্যারে printf,-ing প্রতিটি argv হয় মান. 708 00:36:59,600 --> 00:37:04,730 >> আমি এই করতে হলে তাই. 709 00:37:04,730 --> 00:37:08,232 Argv হয় 1 করুন. 710 00:37:08,232 --> 00:37:09,940 এটি প্রনয়ন. 711 00:37:09,940 --> 00:37:11,620 ডট argv হয় 1 কাট. 712 00:37:11,620 --> 00:37:15,530 শুধু এই চলমান, এটা প্রিন্ট স্ল্যাশ argv হয় 1 ডট 713 00:37:15,530 --> 00:37:18,500 শুধু কমান্ড লাইন ছিল, যেহেতু প্রোগ্রামের নাম argument--. 714 00:37:18,500 --> 00:37:22,080 সবসময় least-- এ থাকবে argc, এক কম হতে পারে না 715 00:37:22,080 --> 00:37:25,910 যেহেতু সেখানে সবসময় অন্তত চালানোর প্রোগ্রামের নাম হতে. 716 00:37:25,910 --> 00:37:32,040 সুতরাং 1 রব 1 argv প্রিন্ট হবে argv এবং তারপর নতুন লাইনে "রব." 717 00:37:32,040 --> 00:37:36,350 >> প্রথম পুনরাবৃত্তির তাই এই লুপ, আমি 0 হয়. 718 00:37:36,350 --> 00:37:39,090 Argv 0 প্রোগ্রাম নাম. 719 00:37:39,090 --> 00:37:40,010 ডট argv হয় 1 কাট. 720 00:37:40,010 --> 00:37:43,770 এবং তারপর 1 আমার প্রথম argv রব যা কমান্ড লাইন আর্গুমেন্ট. 721 00:37:43,770 --> 00:37:45,920 এই মুহুর্তে আমরা argc সমান হয়. 722 00:37:45,920 --> 00:37:48,210 আমরা লুপ আউট বিরতি এবং আমরা কাজ করছি. 723 00:37:48,210 --> 00:37:53,940 সুতরাং এই একটি অবাধ জন্য কাজ করবে কমান্ড লাইন আর্গুমেন্ট সংখ্যা. 724 00:37:53,940 --> 00:37:58,550 লক্ষ্য করুন এটা argv 0, argv হয় ছাপে 1, argv হয় 2, argv হয় 3, argv হয় 4. 725 00:37:58,550 --> 00:38:00,150 আর কোন argv হয় 5 আছে. 726 00:38:00,150 --> 00:38:01,460 argc, 5 সমান. 727 00:38:01,460 --> 00:38:06,960 তাই আমি 5 ই সমান এ argc-- এ, আমরা লুপ আউট বিরতি. 728 00:38:06,960 --> 00:38:07,950 ঠিক আছে. 729 00:38:07,950 --> 00:38:11,315 আমরা আগে যে প্রশ্ন তাই একটি আরো জটিল উদাহরণ তাকান? 730 00:38:11,315 --> 00:38:14,190 731 00:38:14,190 --> 00:38:16,860 >> সুতরাং 2 argv. 732 00:38:16,860 --> 00:38:17,830 ঠিক আছে. 733 00:38:17,830 --> 00:38:20,610 তাই আমরা এখনও মুদ্রণ করছি কমান্ড লাইন আর্গুমেন্ট. 734 00:38:20,610 --> 00:38:23,170 কিন্তু এখন আমরা আছে বিজ্ঞপ্তি একটি লুপ জন্য নেস্টেড. 735 00:38:23,170 --> 00:38:24,670 তাই কি এই করছে? 736 00:38:24,670 --> 00:38:28,430 সুতরাং প্রথম লুপ করছে ঠিক কি এটি করার আগে করেনি. 737 00:38:28,430 --> 00:38:30,950 আমরা এখনও উপর looping করছি প্রতিটি কমান্ড লাইন আর্গুমেন্ট, 738 00:38:30,950 --> 00:38:34,260 কিন্তু এখন এই দ্বিতীয় লুপ আমরা করেছি এছাড়াও সামনে ভালো কিছু দেখা. 739 00:38:34,260 --> 00:38:38,600 তিনি উপর iterating করা হলে Zamyla টু Z-একটি-এম-ওয়াই-এল-একটি প্রিন্ট আউট. 740 00:38:38,600 --> 00:38:44,816 সুতরাং int- এ জে জন্য এই দ্বিতীয় লুপ সমান 0, এন argv বন্ধনী আমি strlen সমান. 741 00:38:44,816 --> 00:38:49,170 >> সুতরাং প্রথম জন্য মনে করা যাক the-- ভিতর দিয়ে হেটে যেতে. 742 00:38:49,170 --> 00:38:53,560 এর কি কম্পিউটার would চিন্তা করা যাক শুধু বিন্দু হিসাবে আমি এই প্রোগ্রাম দৌড়ে যদি না 743 00:38:53,560 --> 00:38:56,030 argv হয় ড্যাশ 2 কাট. 744 00:38:56,030 --> 00:39:03,590 যদি তাই আমি তারপর, এই কোড দৌড়ে 1-argc সমান হতে যাচ্ছে. 745 00:39:03,590 --> 00:39:07,050 আর স্ট্রিং শুধুমাত্র আছে argv-- argv মধ্যে এক সূচক হতে যাচ্ছে, 746 00:39:07,050 --> 00:39:12,370 এবং যে বিন্দু সমান হতে যাচ্ছে argv হয় কাট 2 না প্রোগ্রামের নাম. 747 00:39:12,370 --> 00:39:19,170 >> ঠিক আছে, তাই এখন আমি চেয়ে আমি কম, 0 সমান 1, আমি প্লাস প্লাস int- এ জে 0 সমান জন্য, 748 00:39:19,170 --> 00:39:23,880 এন, তাই argv বন্ধনী 0 strlen সমান এই লুপ প্রথম পুনরাবৃত্তির. argv হয় 749 00:39:23,880 --> 00:39:27,250 বন্ধনী 0 বিন্দু স্ল্যাশ argv হয় 2. 750 00:39:27,250 --> 00:39:29,320 যাতে স্ট্রিং এর দৈর্ঘ্য কত? 751 00:39:29,320 --> 00:39:32,480 ওয়েল, এক-আর-জি-ভী ড্যাশ 2 বিন্দু স্ল্যাশ. 752 00:39:32,480 --> 00:39:35,020 যে strlen সুতরাং 8 হবে. 753 00:39:35,020 --> 00:39:37,500 তাই জে 0 সমান, এন 8 সমান. 754 00:39:37,500 --> 00:39:39,530 যতদিন J 8, J ++ কম হয়. 755 00:39:39,530 --> 00:39:44,080 এবং সেই সঙ্গে আমরা হতে যাচ্ছেন একটি অক্ষর, মুদ্রণ যা 756 00:39:44,080 --> 00:39:47,350 আমি J বন্ধনী argv বন্ধনী হয়. 757 00:39:47,350 --> 00:39:49,826 >> সুতরাং শুধুমাত্র আমি শূন্য. 758 00:39:49,826 --> 00:39:51,700 আমরা এখনও শুধুমাত্র একটি আছে কমান্ড লাইন আর্গুমেন্ট. 759 00:39:51,700 --> 00:39:53,890 যে প্রথম পুনরাবৃত্তির লুপ জন্য, আমরা করছি 760 00:39:53,890 --> 00:39:56,950 মুদ্রণ করা যাচ্ছে argv বন্ধনী 0 বন্ধনী 0. 761 00:39:56,950 --> 00:39:58,325 এবং তারপর ঞ বাড়ায় যাচ্ছে. 762 00:39:58,325 --> 00:40:01,650 আর আমরা প্রিন্টিং চলুন argv বন্ধনী 0 বন্ধনী 1. 763 00:40:01,650 --> 00:40:04,150 এবং তারপর বন্ধনী 0 বন্ধনী 2 argv হয়. 764 00:40:04,150 --> 00:40:09,030 >> সুতরাং এই আমাদের প্রথম এনকাউন্টার বহু মাত্রিক অ্যারে. 765 00:40:09,030 --> 00:40:12,770 আমি আগেই বলেছি যে আগে মনে রাখুন যে argv হয় টেকনিক্যালি হয় 766 00:40:12,770 --> 00:40:15,950 অক্ষরের অ্যারে একটি অ্যারের. 767 00:40:15,950 --> 00:40:24,360 তাই এখানে আমি কিছু ভালো বলেন, তাহলে স্ট্রিং গুলি, argv বন্ধনী আমি সমান 768 00:40:24,360 --> 00:40:29,590 এবং তারপর আমি, তিনি বলেন বন্ধনী J, এই একই জিনিস accomplishing হবে. 769 00:40:29,590 --> 00:40:31,960 এখন, আপনি আগে গুলি বন্ধনী J দেখা করেছি. 770 00:40:31,960 --> 00:40:36,680 যে শুধু J-তম অ্যাক্সেস এই স্ট্রিং এর চরিত্র. 771 00:40:36,680 --> 00:40:48,010 তাই এই সঙ্গে, আমরা পাচ্ছেন আমি-তম argv এর J-তম অক্ষর. 772 00:40:48,010 --> 00:40:51,450 >> তাই এই কি শেষ পর্যন্ত আউটপুট উচিত? 773 00:40:51,450 --> 00:40:53,210 Argv 2 করুন. 774 00:40:53,210 --> 00:40:54,730 এটি প্রনয়ন. 775 00:40:54,730 --> 00:40:56,340 ডট argv 2 কাট. 776 00:40:56,340 --> 00:41:03,790 "রব মারিয়া হানা," এবং আমাদের কিছু রুম দিতে. 777 00:41:03,790 --> 00:41:07,050 সুতরাং আমরা এই outputting যে দেখতে নিজস্ব লাইন এবং স্ল্যাশ ডট 778 00:41:07,050 --> 00:41:08,920 নিজস্ব লাইন নিজস্ব লাইন এবং একটি উপর. 779 00:41:08,920 --> 00:41:11,260 এটা আউট প্রতিটি মুদ্রণ স্বতন্ত্র চরিত্র 780 00:41:11,260 --> 00:41:12,950 প্রতিটি কমান্ড লাইন আর্গুমেন্ট এর. 781 00:41:12,950 --> 00:41:15,960 এবং তারপর তাদের মধ্যে, কারণ এই নতুন লাইন 782 00:41:15,960 --> 00:41:19,380 আমরা এখানে নিচে মুদ্রণ করছি তাদের মধ্যে যদি একটি নতুন লাইন প্রিন্ট করব. 783 00:41:19,380 --> 00:41:24,540 >> সুতরাং এই অনুরূপ পূর্বে argv হয় ড্যাশ 1, 784 00:41:24,540 --> 00:41:26,459 প্রতিটি মুদ্রিত যা কমান্ড লাইন আর্গুমেন্ট, 785 00:41:26,459 --> 00:41:28,500 কিন্তু এখন আমরা মুদ্রণ করছি কমান্ড লাইন আর্গুমেন্ট 786 00:41:28,500 --> 00:41:31,950 এবং তারপর প্রতিটি মাধ্যমে iterating প্রতিটি কমান্ড লাইন আর্গুমেন্ট এর চরিত্র 787 00:41:31,950 --> 00:41:35,400 এই আউটপুট পেতে. 788 00:41:35,400 --> 00:41:36,870 ঠিক আছে? 789 00:41:36,870 --> 00:41:40,570 এই প্রশ্ন তাই? 790 00:41:40,570 --> 00:41:45,130 >> একটি বিষয় উল্লেখ্য যে যে হয় কমান্ড-লাইন আর্গুমেন্ট 791 00:41:45,130 --> 00:41:49,990 তাই তারা যেমন শূণ্যস্থান দ্বারা পৃথক করা হয় আপনি স্বাভাবিকভাবেই তাদের আশা করা হবে. 792 00:41:49,990 --> 00:41:53,050 সুতরাং একটি স্ট্রিং এটা শূণ্যস্থান থাকতে পারে. 793 00:41:53,050 --> 00:41:57,380 এটা অতি গুরুত্বপূর্ণ নয়, কিন্তু আমি যদি তৃতীয় কমান্ড লাইন আর্গুমেন্ট চেয়েছিলেন 794 00:41:57,380 --> 00:42:01,226 আমি তারপর, এটা একটি স্থান আছে ভালো কিছু বলতে পারে. 795 00:42:01,226 --> 00:42:04,470 796 00:42:04,470 --> 00:42:05,550 ঠিক আছে? 797 00:42:05,550 --> 00:42:12,190 সুতরাং এখন এই এখনও শুধুমাত্র তিনটি কমান্ড-লাইন আর্গুমেন্ট ভাল 4. 798 00:42:12,190 --> 00:42:17,620 ডট argv হয় ড্যাশ 2 কাট, রব, মারিয়া, এবং হানা ব্লুমবার্গ. 799 00:42:17,620 --> 00:42:18,320 ঠিক আছে. 800 00:42:18,320 --> 00:42:19,310 এই প্রশ্ন? 801 00:42:19,310 --> 00:42:22,700 802 00:42:22,700 --> 00:42:24,894 >> বিশেষ কিছুই নেই স্থান চরিত্র সম্পর্কে. 803 00:42:24,894 --> 00:42:27,810 এটা ঠিক যে হতে হবে কমান্ড-লাইন স্থান অক্ষর একইরূপে 804 00:42:27,810 --> 00:42:29,226 কিভাবে হিসাবে আপনি প্রতিটি যুক্তি আলাদা. 805 00:42:29,226 --> 00:42:32,048 806 00:42:32,048 --> 00:42:33,000 ঠিক আছে. 807 00:42:33,000 --> 00:42:39,950 আমি তখন সমস্যা সেট আপনি হতে যাচ্ছেন two-- 808 00:42:39,950 --> 00:42:43,240 গোপন-কি ক্রিপ্টোগ্রাফি এ খুঁজছেন. 809 00:42:43,240 --> 00:42:47,700 যে উদাহরণ সুতরাং, একই আমরা একটি ক্রিসমাস গল্প থেকে দেখেছি 810 00:42:47,700 --> 00:42:52,840 আপনি কিছু প্রয়োগ করা চলুন একটি বার্তা দেওয়া যে আলগোরিদিম, 811 00:42:52,840 --> 00:42:55,560 আপনি পাবে যাচ্ছেন যে বার্তা এনক্রিপ্ট করা 812 00:42:55,560 --> 00:42:58,730 যে গোপন সঙ্গে শুধু কেউ কী, যে সঙ্কেতমোচক রিং সঙ্গে, 813 00:42:58,730 --> 00:43:01,090 ডিক্রিপ্ট করতে সক্ষম হওয়া উচিত. 814 00:43:01,090 --> 00:43:04,839 >> সুতরাং যে স্ট্যান্ডার্ড সংস্করণ. 815 00:43:04,839 --> 00:43:07,130 আপনি বাস্তবায়নের হতে যাচ্ছেন দুটি ভিন্ন সংস্করণ. 816 00:43:07,130 --> 00:43:09,620 আপনি কটাক্ষপাত ঘটতে হলে হ্যাকার এখন সংস্করণ এ, 817 00:43:09,620 --> 00:43:12,600 আমরা দিতে যাচ্ছেন আপনি কি এই মত একটি পংক্তি, 818 00:43:12,600 --> 00:43:15,240 যা একটি এনক্রিপ্ট পাসওয়ার্ড প্রতিনিধিত্ব করে. 819 00:43:15,240 --> 00:43:19,990 সুতরাং আপনার লক্ষ্য চিন্তা করা হয় ডিক্রিপ্ট পাসওয়ার্ড কি. 820 00:43:19,990 --> 00:43:26,950 এখন আসলে কিভাবে এই পাসওয়ার্ডের কম্পিউটারের অনেক সংরক্ষণ করা হয়, 821 00:43:26,950 --> 00:43:31,290 এবং এটা শুধু এই দোকান অক্ষরের র্যান্ডম স্ট্রিং. 822 00:43:31,290 --> 00:43:34,440 আপনি পেতে জিনিসটা কিভাবে আছে অক্ষরের এই র্যান্ডম স্ট্রিং থেকে 823 00:43:34,440 --> 00:43:36,140 মূল পাসওয়ার্ড কি ছিল. 824 00:43:36,140 --> 00:43:39,060 825 00:43:39,060 --> 00:43:43,290 >> এবং পরিশেষে, পরে এই সমস্যা সেট, আপনি উচিত 826 00:43:43,290 --> 00:43:46,100 এর মানে কি বুঝতে পারবে. 827 00:43:46,100 --> 00:43:51,650 সুতরাং আপনি ডিক্রিপ্ট করা শিখতে হবে র্যান্ডম স্ট্রিং এই সাজানোর. 828 00:43:51,650 --> 00:43:56,390 একইভাবে, আপনি সপ্তাহে থেকে মনে হলে 0, আপনি এই URL দেখা হতে পারে. 829 00:43:56,390 --> 00:44:00,210 এবং আপনি করতে সক্ষম হওয়া উচিত অবশেষে এই ডিক্রিপ্ট. 830 00:44:00,210 --> 00:44:04,810 আপনি খুশি হতে পারে না যখন আপনি ডিক্রিপ্ট এবং লিংকে ক্লিক করুন. 831 00:44:04,810 --> 00:44:05,700 ঠিক আছে. 832 00:44:05,700 --> 00:44:06,591 আজ পর্যন্ত এর. 833 00:44:06,591 --> 00:44:12,095 তাই আপনাকে দেখতে আগামী সপ্তাহে! 834 00:44:12,095 --> 00:44:18,315 >> [বৈদ্যুতিন সঙ্গীত বাজাচ্ছি] 835 00:44:18,315 --> 00:47:15,619