2 00:00:00,000 --> 00:00:02,470 >> বক্তা 1: এর একটি প্রোগ্রাম লিখুন যাক যে নামের জন্য ব্যবহারকারীকে এবং লিখতে অনুরোধ 3 00:00:02,470 --> 00:00:03,990 তিন ছাত্র ঘর. 4 00:00:03,990 --> 00:00:07,300 কিন্তু বদলে শুধু প্রিন্ট আউট তাদের পর্দায় নাম এবং ঘর, এর যাক 5 00:00:07,300 --> 00:00:09,660 পরিবর্তে ডিস্ক যে তথ্য সংরক্ষণ করুন. 6 00:00:09,660 --> 00:00:14,530 অন্য কথায়, একটি CSV, বলে, চলুন তৈরি করুন ফাইল, কমা দিয়ে পৃথক করা মান জন্য, 7 00:00:14,530 --> 00:00:17,720 আসলে শুধুমাত্র একটি টেক্সট ফাইল যা যে এক্সেল বা নাম্বার মত প্রোগ্রাম 8 00:00:17,720 --> 00:00:21,690 খোলা, এবং কার্যকরভাবে যারা রক্ষা করতে পারে নাম এবং ঘর স্থায়ীভাবে যাতে 9 00:00:21,690 --> 00:00:23,220 আমরা পরে তাদের পর্যালোচনা করতে পারেন. 10 00:00:23,220 --> 00:00:25,960 >> এটা করার জন্য, এর প্রথম কটাক্ষপাত করা যাক আমি করেছি যে কিছু boilerplate কোড 11 00:00:25,960 --> 00:00:27,650 ইতিমধ্যে দিয়ে শুরু. 12 00:00:27,650 --> 00:00:32,380 প্রথম যে হেডার মধ্যে লক্ষ্য করুন টপ আপ এখন মান lib.h যা 13 00:00:32,380 --> 00:00:36,710 সম্পর্কিত কিছু ফাংশন আছে এরকম ইনপুট / আউটপুট, ফাইল ইনপুট এবং আউটপুট ফাইল. 14 00:00:36,710 --> 00:00:39,560 আমি আরো ঘোষণা করছি যে লক্ষ্য করুন ছাত্রদের নামক একটি ধ্রুবক - 15 00:00:39,560 --> 00:00:42,380 সব ক্যাপ মধ্যে - যার মূল্য কঠিন তিনটি হিসাবে কোডেড হয়. 16 00:00:42,380 --> 00:00:45,820 এখন আমার মূল যে ভিতরে লক্ষ্য করুন প্রোগ্রাম, আমি একটি অ্যারের ঘোষণা করছি 17 00:00:45,820 --> 00:00:50,270 সাইজ তিন নামক যে ধ্রুবক ব্যবহার ছাত্রদের যার সদস্যদের প্রতিটি হয় 18 00:00:50,270 --> 00:00:51,650 ছাত্র টাইপ করুন. 19 00:00:51,650 --> 00:00:56,150 >> একজন ছাত্র আমরা সংজ্ঞায়িত করব এখন প্রত্যাহার একটি নাম এবং একটি ঘর উভয় তার হিসাবে 20 00:00:56,150 --> 00:01:00,410 এই হিসাবে প্রতি স্ট্রিং যা ঘোষণাপত্র, বিন্দু জ নির্দেশ. 21 00:01:00,410 --> 00:01:04,680 এখন ফিরে structs1.c সালে, বিজ্ঞপ্তি যে আমি একটি লুপ জন্য এখানে যে যাচ্ছে করেছেন 22 00:01:04,680 --> 00:01:06,750 তিন পর্যন্ত শূন্য থেকে বারবার. 23 00:01:06,750 --> 00:01:10,020 এটি একটি ছাত্র এর জন্য আমাকে অনুরোধ জানানো যাচ্ছে নাম ও একটি ছাত্র এর ঘর 24 00:01:10,020 --> 00:01:12,310 আবার এবং আবার এবং আবার. 25 00:01:12,310 --> 00:01:15,620 >> এর পরে এই প্রোগ্রাম নীচে, আমি লুপ জন্য অন্য যে বিজ্ঞপ্তি 26 00:01:15,620 --> 00:01:19,970 যে মুক্ত করতে যাচ্ছে ith ছাত্র এর নাম এবং একটি মধ্যে ith ছাত্র এর ঘর 27 00:01:19,970 --> 00:01:21,570 একইভাবে লুপ নির্মিত. 28 00:01:21,570 --> 00:01:24,480 নিশ্চিত করতে, আমরা যারা loops একত্রিত পারে শুধু একটা, কিন্তু আমি চেয়েছি করার মধ্যে 29 00:01:24,480 --> 00:01:28,180 কোড এর কিছু স্বতন্ত্র অংশ আছে এখানে আলোচনা অনুরোধে জন্য. 30 00:01:28,180 --> 00:01:31,920 >> এখন loops জন্য যারা মাঝে মধ্যে, এর যাক আসলে অন্য আছে, এবং এই এক এর 31 00:01:31,920 --> 00:01:35,210 জীবনের উদ্দেশ্য আসলে সব সংরক্ষণ করতে হয় যে এইসব নাম এবং ঘর 32 00:01:35,210 --> 00:01:39,810 বর্তমানে আকারে ডিস্কের মধ্যে উপস্থিত RAM-র মধ্যে কমা দিয়ে পৃথক করা মান. 33 00:01:39,810 --> 00:01:42,080 এটা করার জন্য, আমরা ব্যবহার করতে যাচ্ছেন তিনটি নতুন ফাংশন - 34 00:01:42,080 --> 00:01:47,450 ফল খোলা, ফল printf,, এবং ফল ঘনিষ্ঠ, যা , একটি ফাইল খোলার জন্য কোনো ফাইল প্রিন্ট, এবং 35 00:01:47,450 --> 00:01:48,440 একটি ফাইল বন্ধ করুন. 36 00:01:48,440 --> 00:01:49,690 অনুসরণ হিসাবে আমরা তাদের ব্যবহার করতে পারেন. 37 00:01:49,690 --> 00:01:52,110 38 00:01:52,110 --> 00:01:58,240 >> ফাইল, সব ক্যাপ মধ্যে, যা কিছুটা হয় সি একটি কৌতূহল, ফাইলের fopen পরার 39 00:01:58,240 --> 00:02:03,020 উদ্ধৃতি উদ্ধতি এবং জন্য এখন একটি নাম students.CSV, বলে, ফাইল, কিন্তু আমি করতে পারে 40 00:02:03,020 --> 00:02:08,150 অধিকাংশ কিছু, কমা কল এবং এখন আমি আছি ভিতরে W একটি একক নির্দিষ্ট করতে যাচ্ছে 41 00:02:08,150 --> 00:02:09,390 ডাবল কোট. 42 00:02:09,390 --> 00:02:13,290 ওয়াট, আপনার আগে থেকেই অনুমিত হয়ে থাকতে পারে যে, fopen এই ফাইল খুলতে উচিত নয় 43 00:02:13,290 --> 00:02:17,360 তাই লেখার জন্য Students.CSV বলা আসলে আমরা কিছু সঞ্চয় করতে পারেন যে 44 00:02:17,360 --> 00:02:19,370 এটি করার বিষয়বস্তু. 45 00:02:19,370 --> 00:02:23,080 >> এর যাক পরের চেক যদি ফাইল নাল সমান নয়. 46 00:02:23,080 --> 00:02:25,860 এটা যদি, কিছু সম্ভবত আছে যে ক্ষেত্রে ভুল সর্বস্বান্ত আমরা 47 00:02:25,860 --> 00:02:28,340 চেষ্টা করতে এগিয়ে যাওয়া উচিত এটি কিছু প্রিন্ট করতে. 48 00:02:28,340 --> 00:02:33,400 কিন্তু এটা নাল না, তারপর ভেতরে আমি বারবার যাচ্ছি কোঁকড়া ধনুর্বন্ধনী 49 00:02:33,400 --> 00:02:38,030 আমি ছাত্র পর্যন্ত নেভিগেশন 0 সমান, থেকে এবং আমি যাচ্ছি 50 00:02:38,030 --> 00:02:40,180 আমি প্রতিটি পুনরাবৃত্তির উপর বাড়ায়. 51 00:02:40,180 --> 00:02:45,750 এবং এই লুপ ভিতরে, আমি যাচ্ছি fprintf একটি ফাইল প্রিন্ট করতে যাতে - 52 00:02:45,750 --> 00:02:47,940 বিশেষভাবে এক আমি ইতিমধ্যে খোলা - 53 00:02:47,940 --> 00:02:54,650 এই% S,% s-মতো দেখতে একটি স্ট্রিং ব্যাকস্ল্যাশ এন নিকট মূল্যউদ্ধৃতি. 54 00:02:54,650 --> 00:02:58,790 >> এবং এখন আমি প্রতিটি মধ্যে চলা করতে চান যারা স্থানধারক প্রকৃত মান 55 00:02:58,790 --> 00:03:03,390 একটি ছাত্র এর নাম এবং একটি বাড়ির ডট অপারেটর ব্যবহার করে. 56 00:03:03,390 --> 00:03:10,030 শিক্ষার্থীরা বন্ধনী i.name, ছাত্র বন্ধনী i.house বন্ধ paren 57 00:03:10,030 --> 00:03:11,230 সেমিকোলন. 58 00:03:11,230 --> 00:03:16,180 এখন লুপ জন্য এই নিচে, আমি কেবল নই যাতে ফাইলের fclose কল যাচ্ছে 59 00:03:16,180 --> 00:03:18,520 শেষ পর্যন্ত ফাইল বন্ধ করতে. 60 00:03:18,520 --> 00:03:21,360 >> আমি এই প্রোগ্রাম চালানো হলে এখন, আমি না করা উচিত আসলে নেভিগেশন কিছু দেখতে 61 00:03:21,360 --> 00:03:25,010 পর্দা, কিন্তু আমি থাকা উচিত চলমান পরে এই প্রোগ্রাম নামক কোনো ফাইল 62 00:03:25,010 --> 00:03:29,130 একই ডিরেক্টরির মধ্যে Students.CSV যে আমি যে উচিত এ কমান্ডটি 63 00:03:29,130 --> 00:03:32,480 পৃথক একটি কমা থাকে মান তালিকা. 64 00:03:32,480 --> 00:03:34,790 এর কটাক্ষপাত করা যাক. 65 00:03:34,790 --> 00:03:41,690 >> করুন structs 1. / Structs1 ছাত্র এর , এর ডেভিড বলা যাক, নাম দিন 66 00:03:41,690 --> 00:03:43,140 তিনি মাথের বাস করব. 67 00:03:43,140 --> 00:03:46,890 ছাত্র এর নাম, এর কথা বলা যাক, লরেন, সে Leverett বাস করব. 68 00:03:46,890 --> 00:03:50,800 ছাত্র এর নাম, এর কথা বলা যাক, রব, তিনি কার্কল্যান্ড বাস করব. 69 00:03:50,800 --> 00:03:54,050 এখন, আবার, যেমন প্রত্যাশিত, কিছুই প্রদর্শিত ঘটেছে, কিন্তু দেওয়া হয়েছে বলে আমার 70 00:03:54,050 --> 00:03:58,790 কমান্ড প্রম্পট এবং টাইপ এ এগিয়ে যান আশা ছ সম্পাদনা students.CSV যে 71 00:03:58,790 --> 00:04:00,850 যে ফাইলটি প্রকৃতপক্ষে বিদ্যমান. 72 00:04:00,850 --> 00:04:07,010 >> Gedit students.CSV লিখুন, এবং প্রকৃতপক্ষে, লক্ষ্য করা যে বিশুদ্ধরূপে ধারণকারী একটি ফাইল 73 00:04:07,010 --> 00:04:11,320 টেক্সট, কিন্তু টেক্সট কমা দ্বারা পৃথক করা প্রতিটি ক্ষেত্রের জন্য, প্রকৃতপক্ষে বিদ্যমান. 74 00:04:11,320 --> 00:04:14,530 এবং আমরা CS50, না ব্যবহার করা হয়েছে কিনা যন্ত্র, কিন্তু একটি আরো পরিচিত ম্যাক বা 75 00:04:14,530 --> 00:04:18,080 পিসি, দেখা যাচ্ছে যে আমরা সত্যিই পারা আরো একটি সঙ্গে এই CSV ফাইল খুলতে 76 00:04:18,080 --> 00:04:20,400 এক্সেল বা নাম্বার মত পরিচিত প্রোগ্রাম. 77 00:04:20,400 --> 00:04:22,906