1 00:00:00,000 --> 00:00:05,330 2 00:00:05,330 --> 00:00:07,870 >> বক্তা: এ পর্যন্ত, এটি করিয়েছে আপনার প্রোগ্রাম অধিকাংশ যে 3 00:00:07,870 --> 00:00:10,170 একটি বিট ক্ষণজীবী হয়েছে. 4 00:00:10,170 --> 00:00:13,310 আপনি মারিও বা অর্থগৃধ্নু মত একটি প্রোগ্র্যাম চালাতে. 5 00:00:13,310 --> 00:00:17,350 এটা হতে পারে অনুরোধ জানানো, কিছু আছে কিছু তথ্য ব্যবহারকারী, 6 00:00:17,350 --> 00:00:20,400 পর্দায় কিছু আউটপুট প্রিন্ট, কিন্তু তারপর আপনার প্রোগ্রাম, ওভার যখন 7 00:00:20,400 --> 00:00:23,252 সেখানে কোনো প্রমাণ সত্যিই আছে এটা কখনও প্রথম স্থানে চালানো হয়. 8 00:00:23,252 --> 00:00:25,960 আমি নিশ্চিত, আপনি ছেড়ে দেওয়া হতে পারে, মানে এটা টার্মিনাল উইন্ডোতে খুলুন 9 00:00:25,960 --> 00:00:29,770 আপনি আপনার পর্দা পরিষ্কার কিন্তু যদি, আছে এটা যে অস্তিত্ব সত্যিই কোন প্রমাণ. 10 00:00:29,770 --> 00:00:33,720 আমরা সংরক্ষণকারী একটি উপায় আছে না ক্রমাগত তথ্য, তথ্য 11 00:00:33,720 --> 00:00:36,890 আমাদের পরে বিদ্যমান প্রোগ্রাম চলমান বন্ধ হয়েছে, 12 00:00:36,890 --> 00:00:39,241 বা আমরা এই বিন্দু পর্যন্ত না আছে. 13 00:00:39,241 --> 00:00:41,490 সৌভাগ্যবশত যদিও, সি আছে ক্ষমতা সঙ্গে আমাদের প্রদান 14 00:00:41,490 --> 00:00:44,220 প্রয়োগ করে এই কাজ করতে কিছু বলা 15 00:00:44,220 --> 00:00:48,330 একটি ফাইল, একটি কাঠামো যে মূলত আপনি দ্বিগুণ হবে যে একটি ফাইল প্রতিনিধিত্ব 16 00:00:48,330 --> 00:00:53,826 যদি আপনি আপনার কম্পিউটারের তে ক্লিক একটি গ্রাফিকাল ইউজার পরিবেশে ব্যবহৃত. 17 00:00:53,826 --> 00:00:55,700 সাধারণত যখন কাজ সি, আমরা আসলে করছি 18 00:00:55,700 --> 00:00:59,965 সঙ্গে কাজ করা যাচ্ছে পয়েন্টার ফাইল files-- করতে stars-- 19 00:00:59,965 --> 00:01:02,090 একটি সামান্য বিট ছাড়া আমরা একটি দম্পতি সম্পর্কে কথা বলতে হলে 20 00:01:02,090 --> 00:01:04,560 ফাংশন যে ফাইল পয়েন্টার সঙ্গে কাজ. 21 00:01:04,560 --> 00:01:08,990 আপনি সত্যিই খুঁড়েছে প্রয়োজন হবে না বোঝার পয়েন্টার মধ্যে খুব গভীর 22 00:01:08,990 --> 00:01:09,730 নিজেদের. 23 00:01:09,730 --> 00:01:12,870 একটু পুঁচকে বিট আছে আমরা তাদের সম্পর্কে কথা বলতে হবে যেখানে, 24 00:01:12,870 --> 00:01:18,090 কিন্তু সাধারণত পয়েন্টার এবং দায়ের পয়েন্টার, পারস্পরিক সম্পর্কযুক্ত করার সময়, 25 00:01:18,090 --> 00:01:20,290 ঠিক একই জিনিস নয়. 26 00:01:20,290 --> 00:01:22,440 >> এখন আমি যখন তা মানে না আমি ক্রমাগত তথ্য বলতে? 27 00:01:22,440 --> 00:01:23,650 ক্রমাগত তথ্য কি? 28 00:01:23,650 --> 00:01:25,232 আমরা এটা সম্পর্কে কেন দরকার? 29 00:01:25,232 --> 00:01:27,190 যে, উদাহরণস্বরূপ, বলুন আপনি একটি প্রোগ্রাম চালাচ্ছেন 30 00:01:27,190 --> 00:01:29,850 অথবা আপনি পুনর্লিখিত করেছি একটি একটি খেলা যে প্রোগ্রাম, 31 00:01:29,850 --> 00:01:32,960 এবং আপনি ট্র্যাক রাখতে চান ব্যবহারকারীর প্যাচসমূহ সব 32 00:01:32,960 --> 00:01:36,620 তাই কিছু গোলমাল যে হয়তো যদি, আপনি খেলা পরে ফাইল পর্যালোচনা করতে পারেন. 33 00:01:36,620 --> 00:01:39,970 যে যখন আমরা মানে কি ক্রমাগত তথ্য সম্পর্কে কথা বলতে. 34 00:01:39,970 --> 00:01:43,930 >> চালানোর জন্য অবশ্যই আপনার প্রোগ্রাম, একটি ফাইল তৈরি করা হয়. 35 00:01:43,930 --> 00:01:45,680 এবং যখন আপনার প্রোগ্রাম চলমান বন্ধ হয়েছে, 36 00:01:45,680 --> 00:01:48,689 যে ফাইলটি আপনার সিস্টেমে বিদ্যমান. 37 00:01:48,689 --> 00:01:50,230 আর আমরা এটি তাকান এবং এটি পরীক্ষা করতে পারেন. 38 00:01:50,230 --> 00:01:53,670 আর তাই যে প্রোগ্রাম নির্ধারণ করা হবে কিছু নির্দিষ্ট তথ্য তৈরি করেছেন, 39 00:01:53,670 --> 00:01:57,390 তথ্য প্রোগ্রাম পর অস্তিত্ব চলমান সমাপ্ত হয়েছে. 40 00:01:57,390 --> 00:02:02,320 >> এখন কাজ করে এই কর্ম সব ফাইল তৈরি ও সাধিত সাথে 41 00:02:02,320 --> 00:02:04,940 বিভিন্ন উপায়ে তাদের প্রমিত io.h বাস, 42 00:02:04,940 --> 00:02:08,210 যা একটি হেডার ফাইলটি যে আপনি সম্ভবত পাউন্ড চলেছি 43 00:02:08,210 --> 00:02:10,910 বেশ উপরের সহ আপনার প্রোগ্রাম অনেক সব 44 00:02:10,910 --> 00:02:14,130 এটা এক রয়েছে কারণ আমাদের জন্য সবচেয়ে দরকারী ফাংশন, 45 00:02:14,130 --> 00:02:16,130 এছাড়াও দেয় যে printf, প্রমিত io.h. বসবাস 46 00:02:16,130 --> 00:02:20,400 সুতরাং আপনি অন্তর্ভুক্ত পাউন্ড করার প্রয়োজন হবে না কোন অতিরিক্ত ফাইল সম্ভবত 47 00:02:20,400 --> 00:02:23,540 যাতে ফাইল পয়েন্টার সাথে কাজ করতে. 48 00:02:23,540 --> 00:02:29,980 >> এখন প্রতি একক ফাইল পয়েন্টার ফাংশন, বা প্রতি একক ফাইল ইনপুট / আউটপুট, ইনপুট আউটপুট 49 00:02:29,980 --> 00:02:33,310 ফাংশন, এক হিসাবে গ্রহণ তার পরামিতি বা ইনপুট 50 00:02:33,310 --> 00:02:35,822 ছাড়া একটি ফাইল পয়েন্টার এক, যদি fopen, যা 51 00:02:35,822 --> 00:02:38,280 আপনি ফাইল পেতে ব্যবহার কি প্রথমেই পয়েন্টার. 52 00:02:38,280 --> 00:02:41,010 কিন্তু আপনি খোলা থাকেন পর ফাইল এবং আপনার ফাইল পয়েন্টার পেতে, 53 00:02:41,010 --> 00:02:43,510 তারপর আপনি তাদের পাস করতে পারেন বিভিন্ন ফাংশন আর্গুমেন্ট 54 00:02:43,510 --> 00:02:46,720 আমরা সম্পর্কে কথা বলতে যাচ্ছেন আজ, সেইসাথে অনেক অন্যদের 55 00:02:46,720 --> 00:02:48,520 যাতে আপনি ফাইল সঙ্গে কাজ করতে পারেন. 56 00:02:48,520 --> 00:02:50,980 >> তাই ছয় সুন্দর আছে সাধারণ মৌলিক বেশী 57 00:02:50,980 --> 00:02:52,870 আমরা আজ কথা বলার চলুন যে. 58 00:02:52,870 --> 00:02:57,160 fopen এবং তার সহচর ফাংশন fclose, ঠিক fgetc 59 00:02:57,160 --> 00:03:02,670 এবং তার সহচর ফাংশন fputc, এবং fread এবং তার সহচর ফাংশন, 60 00:03:02,670 --> 00:03:03,820 fwrite. 61 00:03:03,820 --> 00:03:05,180 তাই এর ডান এটা ঢোকা. 62 00:03:05,180 --> 00:03:07,050 >> fopen-- ওটা কী করে? 63 00:03:07,050 --> 00:03:10,050 হ্যাঁ, এটি একটি ফাইল খোলে এবং এটা এটা আপনি একটি ফাইল পয়েন্টার দেয়, 64 00:03:10,050 --> 00:03:14,000 অতএব তোমরা কি ব্যবহার করতে পারেন যে একটি যুক্তি হিসেবে পয়েন্টার দায়ের 65 00:03:14,000 --> 00:03:16,730 অন্যান্য ফাইল ইনপুট / আউটপুট ফাংশন কোন. 66 00:03:16,730 --> 00:03:19,100 সবচেয়ে গুরুত্বপূর্ণ বিষয় যদি fopen সঙ্গে মনে রাখা 67 00:03:19,100 --> 00:03:24,222 আপনি খোলা আছে যে পরে ফাইল বা এখানে এক মত একটি কল করা হয়, 68 00:03:24,222 --> 00:03:26,930 আপনি নিশ্চিত করার জন্য পরীক্ষা করা প্রয়োজন যে আপনি ফিরে পেয়েছিলাম যে পয়েন্টার 69 00:03:26,930 --> 00:03:28,320 নাল সমান নয়. 70 00:03:28,320 --> 00:03:31,320 আপনি ভিডিওতে দেখা না করে থাকেন পয়েন্টার, এই অর্থে দেখা যায় না পারে. 71 00:03:31,320 --> 00:03:35,639 কিন্তু আপনি চেষ্টা এবং ডি-রেফারেন্স যদি একটি নাল পয়েন্টার রিকল, 72 00:03:35,639 --> 00:03:38,180 আপনার প্রোগ্রাম সম্ভবত ক্ষতিগ্রস্ত হবে একটি সেগমেন্টেশন [শ্রবণাতীত]. 73 00:03:38,180 --> 00:03:40,540 আমরা নিশ্চিত করতে চাই আমরা একটি বৈধ পয়েন্টার ফিরে পেয়েছিলাম. 74 00:03:40,540 --> 00:03:43,665 সময় গরিষ্ঠাংশ আমরা আছি ফিরে একটি বৈধ পয়েন্টার অর্জিত 75 00:03:43,665 --> 00:03:45,280 এবং এটা একটা সমস্যা হবে না. 76 00:03:45,280 --> 00:03:46,760 >> সুতরাং কিভাবে আমরা এটাকে fopen করে দেই? 77 00:03:46,760 --> 00:03:48,051 এটা এই যুদ্ধই বটে. 78 00:03:48,051 --> 00:03:52,690 একটি জেনেরিক হচ্ছে PTR ptr-- ফাইল তারকা পয়েন্টার যদি fopen ফাইলের জন্য নাম 79 00:03:52,690 --> 00:03:57,300 এবং আমরা দুটি জিনিস একটি ফাইলের নাম পাস এবং একটি অপারেশন আমরা দায়িত্বগ্রহণ করতে চান. 80 00:03:57,300 --> 00:04:01,690 তাই আমরা যে দেখে মনে হচ্ছে একটা কল থাকতে পারে আপাততঃ ফাইল তারকা খুঁজছেন এরকম 1 fopen সমান 81 00:04:01,690 --> 00:04:04,040 file1.txt. 82 00:04:04,040 --> 00:04:07,020 আর আমি মনোনীত করেছি অপারেশন R হয়. 83 00:04:07,020 --> 00:04:08,639 >> তাই কি আপনি এখানে আর মনে হয় না? 84 00:04:08,639 --> 00:04:11,180 যে ধরণের জিনিষ কি আমরা ফাইল করতে সক্ষম হতে পারে? 85 00:04:11,180 --> 00:04:13,760 86 00:04:13,760 --> 00:04:17,500 সুতরাং R অপারেশন যে আমরা আমরা একটি ফাইল পড়তে চান চয়ন. 87 00:04:17,500 --> 00:04:20,260 তাই আমরা মূলত যখন would আমরা এই মত একটি কল করা 88 00:04:20,260 --> 00:04:25,440 নিজেদেরকে একটি ফাইল পয়েন্টার পেয়ে করা আমরা তখন তথ্য পড়তে পারে যে এই ধরনের 89 00:04:25,440 --> 00:04:27,770 file1.txt থেকে. 90 00:04:27,770 --> 00:04:34,190 >> একইভাবে, আমরা ফাইল 2.txt খুলতে পারে ptr2 লেখার জন্য এবং তাই আমরা পাস করতে পারেন, 91 00:04:34,190 --> 00:04:38,210 আমি এখানে তৈরি করেছি ফাইল পয়েন্টার, কোন একটি ফাংশন আর্গুমেন্ট হিসাবে যে 92 00:04:38,210 --> 00:04:40,080 একটি ফাইল থেকে তথ্য লিখেছেন. 93 00:04:40,080 --> 00:04:43,767 আর লেখার অনুরূপ, আছে এছাড়াও বিকল্প একটি, লিখবেন. 94 00:04:43,767 --> 00:04:45,600 দুইটার মধ্যে পার্থক্য লেখা এবং সংযোজন 95 00:04:45,600 --> 00:04:50,920 হচ্ছে আপনি একটি ফাইলে লিখতে হলে যে, আপনি লেখার জন্য fopen একটি কল করতে হলে 96 00:04:50,920 --> 00:04:54,761 এবং যে ফাইল আগে থেকেই এটি বিদ্যমান, সম্পূর্ণ ফাইল মুছে ফেলা যাচ্ছে. 97 00:04:54,761 --> 00:04:56,510 এটা শুরু করতে যাচ্ছে একদম প্রারম্ভকালে, 98 00:04:56,510 --> 00:04:58,820 সব তথ্য মুছে ফেলার যে ইতিমধ্যেই আছে. 99 00:04:58,820 --> 00:05:02,210 >> আপনি সংযোজন জন্য এটি খোলার হইলে সরকারী, এটি ফাইলের শেষে যেতে হবে 100 00:05:02,210 --> 00:05:04,340 ইতিমধ্যে এ টেক্সট আছে কিনা এটা বা এটা তথ্য, 101 00:05:04,340 --> 00:05:06,040 এবং তারপর শুরু হবে সেখান থেকে লেখা. 102 00:05:06,040 --> 00:05:08,570 সুতরাং তোমাদের মধ্যে যে নষ্ট হবে না আপনি আগে কাজ করেছি তথ্য. 103 00:05:08,570 --> 00:05:12,110 আপনি লিখুন বা সংযুক্ত করতে চান কিনা সাজান পরিস্থিতির উপর নির্ভর করে. 104 00:05:12,110 --> 00:05:16,840 কিন্তু আপনি সম্ভবত তা জানতে পারবেন সময় আসে যখন অপারেশন হয়. 105 00:05:16,840 --> 00:05:18,020 সুতরাং যে যদি fopen এর. 106 00:05:18,020 --> 00:05:18,930 >> কি fclose সম্পর্কে? 107 00:05:18,930 --> 00:05:21,600 পাশাপাশি, কাছাকাছি কেবল, fclose শুধু ফাইল পয়েন্টার গ্রহণ করে. 108 00:05:21,600 --> 00:05:24,000 আর আপনি আশা করতে পারে, এটা যে ফাইলটি বন্ধ হয়ে যায়. 109 00:05:24,000 --> 00:05:29,270 আমরা একটি ফাইল বন্ধ করেছি এবং একবার, আমরা না করতে পারেন , কোন ফাইল ইনপুট / আউটপুট ফাংশন সঞ্চালন 110 00:05:29,270 --> 00:05:31,420 পড়া বা সেই ফাইলে লেখা. 111 00:05:31,420 --> 00:05:36,444 আমরা পুনরায় খোলা আছে যাতে অন্য সময় ফাইল 112 00:05:36,444 --> 00:05:38,610 সাথে কাজ চালিয়ে যেতে এটা আমি / হে ফাংশন ব্যবহার. 113 00:05:38,610 --> 00:05:41,520 আমরা কাজ করছি তাই fclose মানে এই ফাইল সঙ্গে কাজ. 114 00:05:41,520 --> 00:05:44,690 আর আমরা পাস করতে হবে একটি ফাইল পয়েন্টার এর নাম. 115 00:05:44,690 --> 00:05:50,010 দুয়েক আগে স্লাইড সুতরাং, আমরা পড়ার জন্য fopened ফাইল 1 ডট টেক্সট 116 00:05:50,010 --> 00:05:52,854 এবং আমরা যে বরাদ্দ ptr1 পয়েন্টার ফাইল. 117 00:05:52,854 --> 00:05:55,020 এখন আমরা করছি সিদ্ধান্ত নিয়েছে করেছি যে ফাইল থেকে পড়া শেষ. 118 00:05:55,020 --> 00:05:56,561 আমরা এটা নিয়ে কোনো কাজ করতে হবে না. 119 00:05:56,561 --> 00:05:58,890 আমরা শুধু fclose ptr1 পারেন. 120 00:05:58,890 --> 00:06:01,950 আর একইভাবে, আমরা পারা অন্যান্য বেশী fclose. 121 00:06:01,950 --> 00:06:02,450 ঠিক আছে. 122 00:06:02,450 --> 00:06:03,700 সুতরাং যে খোলা এবং বন্ধ করা হয়. 123 00:06:03,700 --> 00:06:05,780 ঐ দুটি মৌলিক হয় অপারেশন শুরু. 124 00:06:05,780 --> 00:06:08,050 >> এখন আমরা আসলে চান কিছু মজার জিনিস না, 125 00:06:08,050 --> 00:06:11,940 এবং প্রথম ফাংশন যে আমরা করব যে fgetc-- যে কি করব দেখতে 126 00:06:11,940 --> 00:06:14,110 একটি অক্ষর পেতে দায়ের. 127 00:06:14,110 --> 00:06:17,350 যে সাধারণত fgetc কি অনুবাদ হবে. 128 00:06:17,350 --> 00:06:20,190 জীবন তার লক্ষ্য হয় পরবর্তী অক্ষর পড়তে, 129 00:06:20,190 --> 00:06:22,079 বা এই আপনার খুব হয় তাহলে ঠিক fgetc প্রথম কল 130 00:06:22,079 --> 00:06:23,870 একটি নির্দিষ্ট ফাইলের জন্য, প্রথম অক্ষর. 131 00:06:23,870 --> 00:06:26,210 কিন্তু তারপরে, আপনি, পরের এক পেতে 132 00:06:26,210 --> 00:06:31,500 যে ফাইল খুব পরবর্তী চরিত্র, একটি অক্ষর পরিবর্তনশীল এবং দোকান এটি. 133 00:06:31,500 --> 00:06:34,490 আমরা এখানে কাজ করেছি, গৃহস্থালি CH, ঠিক fgetc সমান 134 00:06:34,490 --> 00:06:36,389 একটি ফাইল পয়েন্টার নামে পাস. 135 00:06:36,389 --> 00:06:38,180 আবার, এটি খুব মনে রাখবেন এখানে গুরুত্বপূর্ণ 136 00:06:38,180 --> 00:06:41,430 যাতে আছে যে এই অপারেশন সফল, 137 00:06:41,430 --> 00:06:45,690 ফাইল পয়েন্টার নিজেই পুরো শরীরটাই পড়ার জন্য খোলা হয়েছে. 138 00:06:45,690 --> 00:06:50,589 আমরা একটি ফাইল থেকে একটি অক্ষর পড়তে পারে না আমরা লেখার জন্য খোলা পয়েন্টার. 139 00:06:50,589 --> 00:06:52,630 সুতরাং যে এক যদি fopen সীমাবদ্ধতার, ডান? 140 00:06:52,630 --> 00:06:55,470 আমরা সীমাবদ্ধ আছে নিজেদেরকে শুধুমাত্র সম্পাদন করতে 141 00:06:55,470 --> 00:06:57,710 একটি ফাইল পয়েন্টার দিয়ে এক অপারেশন. 142 00:06:57,710 --> 00:07:00,220 আমরা পড়তে চেয়েছিলেন এবং একই ফাইল থেকে লিখুন, 143 00:07:00,220 --> 00:07:03,840 আমরা খোলা দুটি পৃথক হবে একই ফাইলের জন্য ফাইল পয়েন্টার 144 00:07:03,840 --> 00:07:05,670 পড়ার জন্য এক, লেখার জন্য এক. 145 00:07:05,670 --> 00:07:08,400 >> তাই আবার, একমাত্র কারণ আমি এখন যে উদ্গীরণ 146 00:07:08,400 --> 00:07:11,920 আমরা একটি কল করতে যাচ্ছেন, কারণ ঠিক fgetc করতে, যে ফাইল পয়েন্টার দেখেছ 147 00:07:11,920 --> 00:07:14,172 পড়ার জন্য খোলা হয়েছে. 148 00:07:14,172 --> 00:07:15,880 এবং তারপর বেশ সহজভাবে, সমস্ত আমরা যা করতে হবে 149 00:07:15,880 --> 00:07:17,546 ফাইল পয়েন্টার নামে পাস হয়. 150 00:07:17,546 --> 00:07:21,060 তাই গৃহস্থালি CH fgetc ptr1 সমান. 151 00:07:21,060 --> 00:07:23,200 >> যে আমাদের পেতে যাচ্ছে পরের চরিত্র 152 00:07:23,200 --> 00:07:25,575 অথবা আবার এই প্রথম, যদি আমরা এই কল করেছি সময়, 153 00:07:25,575 --> 00:07:29,750 প্রথম চরিত্র যাই হোক না কেন ফাইল ptr1 দ্বারা জোরাল হয়. 154 00:07:29,750 --> 00:07:32,210 যে ফাইল 1 ডট টেক্সট যে প্রত্যাহার করা. 155 00:07:32,210 --> 00:07:36,490 এটা যে প্রথম অক্ষর পাবেন এবং আমরা পরিবর্তনশীল CH মধ্যে এটি সংরক্ষণ করব. 156 00:07:36,490 --> 00:07:37,941 অনেকটাই অকপট. 157 00:07:37,941 --> 00:07:40,190 সুতরাং আমরা মাত্র তিন দিকে তাকিয়ে থাকেন ফাংশন এবং আমরা ইতিমধ্যে 158 00:07:40,190 --> 00:07:43,070 বেশ ঝরঝরে কিছু করতে পারেন. 159 00:07:43,070 --> 00:07:46,320 >> আমরা এই ক্ষমতা নিতে হলে তাই একটি অক্ষর পাবার 160 00:07:46,320 --> 00:07:48,943 এবং আমরা লুপ তাই এটিকে আমরা অক্ষর পেতে অবিরত 161 00:07:48,943 --> 00:07:51,390 একটি ফাইল থেকে বেশি এবং ওভার এবং over-- এখন আমরা 162 00:07:51,390 --> 00:07:54,500 প্রতি একক পড়তে পারেন একটি ফাইলের অক্ষর. 163 00:07:54,500 --> 00:07:58,670 আর আমরা প্রত্যেক অক্ষর মুদ্রণ আমরা এটা পড়তে অবিলম্বে পরে, 164 00:07:58,670 --> 00:08:01,960 আমরা এখন একটি ফাইল থেকে পড়া আছে এবং পর্দায় তার বিষয়বস্তু মুদ্রিত. 165 00:08:01,960 --> 00:08:05,610 আমরা কার্যকরভাবে ঘনিভূত করেছি পর্দায় যে ফাইল. 166 00:08:05,610 --> 00:08:09,670 এবং যে কি লিনাক্স কমান্ড বিড়াল আছে. 167 00:08:09,670 --> 00:08:13,250 >> আপনি ফাইলের নামের মধ্যে বিড়াল টাইপ করুন, এটি সমগ্র বিষয়বস্তু প্রিন্ট আউট হবে 168 00:08:13,250 --> 00:08:15,160 আপনার টার্মিনাল উইন্ডোতে ফাইলের. 169 00:08:15,160 --> 00:08:19,010 তাই এখানে এই সামান্য লুপ, কোড মাত্র তিন লাইন, 170 00:08:19,010 --> 00:08:23,270 কিন্তু এটা কার্যকরভাবে সদৃশ লিনাক্স কমান্ড বিড়াল. 171 00:08:23,270 --> 00:08:25,210 সুতরাং এই সিনট্যাক্স পারে , একটু অদ্ভুত চেহারা 172 00:08:25,210 --> 00:08:26,670 কিন্তু এখানে কি ঘটছে. 173 00:08:26,670 --> 00:08:31,460 CH fgetc কাজ সমান হলেও, কাজ খুঁজছেন এরকম নয় এটি একটি সম্পূর্ণ গ্রাস EOF-- সমান, 174 00:08:31,460 --> 00:08:34,669 কিন্তু এর এটা শুধু ভেঙ্গে দিন তাই এটা সিনট্যাক্স উপর স্পষ্ট. 175 00:08:34,669 --> 00:08:37,169 আমি এটা সংকুচিত করেছি স্থান অনুরোধে জন্য, 176 00:08:37,169 --> 00:08:39,049 এটি একটি সামান্য, যদিও সিনট্যাক্স চতুর. 177 00:08:39,049 --> 00:08:41,194 >> তাই সবুজ ডানদিকে এই অংশ এখন, এটা কি করছে? 178 00:08:41,194 --> 00:08:42,860 ওয়েল, যে শুধু আমাদের ঠিক fgetc কল, তাই না? 179 00:08:42,860 --> 00:08:44,530 আমরা আগে যে দেখা করেছি. 180 00:08:44,530 --> 00:08:49,500 এটা এক প্রাপ্তির হচ্ছে ফাইল থেকে চরিত্র. 181 00:08:49,500 --> 00:08:53,220 তারপর আমরা যে তুলনা ফাইলের শেষে বিরুদ্ধে চরিত্র. 182 00:08:53,220 --> 00:08:57,470 ফাইলের শেষে যে একটি বিশেষ মান প্রমিত io.h, সংজ্ঞায়িত যা 183 00:08:57,470 --> 00:08:59,390 ফাইলটি অক্ষর শেষ হয়. 184 00:08:59,390 --> 00:09:03,450 তাই মূলত ঘটতে যাচ্ছে কি এই লুপ একটি অক্ষর পড়তে হবে, 185 00:09:03,450 --> 00:09:07,445 , ফাইলের শেষে এটি তুলনা ফাইলটি অক্ষর শেষ. 186 00:09:07,445 --> 00:09:10,070 তারা যদি না মেলে না, তাই আমরা না আছে ফাইলের শেষে পৌঁছেছেন 187 00:09:10,070 --> 00:09:11,490 আমরা যে চরিত্র প্রিন্ট আউট করব. 188 00:09:11,490 --> 00:09:13,740 তারপর আমরা ফিরে যাবেন আবার লুপ শুরুতে. 189 00:09:13,740 --> 00:09:18,310 আমরা একটি চরিত্র পাবেন, পরীক্ষা ফাইলের শেষে বিরুদ্ধে, তাই এটি প্রিন্ট আউট, এবং 190 00:09:18,310 --> 00:09:21,094 এবং তাই এবং তাই, যে ভাবে মাধ্যমে looping 191 00:09:21,094 --> 00:09:22,760 আমরা ফাইলের শেষে পৌঁছেছেন পর্যন্ত. 192 00:09:22,760 --> 00:09:24,593 এবং তারপর যে বিন্দু দ্বারা, আমরা মুদ্রিত হবে 193 00:09:24,593 --> 00:09:26,210 ফাইলের বিষয়বস্তু খুঁজে. 194 00:09:26,210 --> 00:09:29,450 তাই আবার, আমরা শুধুমাত্র দেখা করেছি যদি fopen, fclose, এবং ঠিক fgetc 195 00:09:29,450 --> 00:09:34,950 এবং ইতিমধ্যে আমরা নকল করতে পারবে না লিনাক্স টার্মিনাল কমান্ড. 196 00:09:34,950 --> 00:09:38,850 >> আমি শুরুতে বলেছি, আমরা ঠিক fgetc এবং fputc ছিল, 197 00:09:38,850 --> 00:09:41,860 এবং fputc সহচর ছিল ঠিক fgetc ফাংশন. 198 00:09:41,860 --> 00:09:44,880 আর তাই, হিসাবে আপনি, কল্পনা করতে পারে এটা লেখার সমতুল্য. 199 00:09:44,880 --> 00:09:49,440 এটা আমাদের একটি লিখতে পারবেন একটি ফাইলে একক চরিত্র. 200 00:09:49,440 --> 00:09:53,290 >> আবার, সতর্কীকরণ হচ্ছে, শুধু এটা ঠিক fgetc সঙ্গে ছিল মত, ফাইল 201 00:09:53,290 --> 00:09:56,660 আমরা পুরো শরীরটাই করতে লেখার যে হয়েছে লেখার জন্য বা সংযোজন জন্য খোলা. 202 00:09:56,660 --> 00:10:00,820 আমরা চেষ্টা এবং একটি ফাইল-এ fputc ব্যবহার করা হলে আমরা পড়ার জন্য খোলা থাকেন যে, 203 00:10:00,820 --> 00:10:02,760 আমাদেরকে অবশই স্বাদ আস্বাদন করতে যাচ্ছেন ভুল একটি বিট. 204 00:10:02,760 --> 00:10:04,440 কিন্তু কল বেশ সহজ. 205 00:10:04,440 --> 00:10:08,000 fputc মূলধন ptr2, সব যে কাজ করতে যাচ্ছে এটা হল 206 00:10:08,000 --> 00:10:12,040 চিঠি লিখতে যাচ্ছেন একটি ফাইলে 2 ডট মধ্যে 207 00:10:12,040 --> 00:10:14,760 এর নাম ছিল, যা টেক্সট, আমরা খোলা এবং নির্ধারিত যে ফাইল 208 00:10:14,760 --> 00:10:17,280 পয়েন্টার ptr2 করতে. 209 00:10:17,280 --> 00:10:20,430 সুতরাং আমরা একটি লিখতে যাচ্ছেন রাজধানীর একটি 2 ডট টেক্সট ফাইলে. 210 00:10:20,430 --> 00:10:24,592 আর আমরা কোন বিস্ময়বোধক লিখুন করব 3 ডট ফাইল নির্দেশ 211 00:10:24,592 --> 00:10:27,330 ptr3 দ্বারা জোরাল হয়, যা টেক্সট,. 212 00:10:27,330 --> 00:10:29,730 তাই আবার, এখানে বেশ সহজবোধ্য. 213 00:10:29,730 --> 00:10:32,727 >> কিন্তু এখন আমরা আরেকটি বিষয় নির্বাচন করতে পারবেন. 214 00:10:32,727 --> 00:10:34,560 এই উদাহরণ আছে আমরা শুধু ওভার চালু ছিল 215 00:10:34,560 --> 00:10:38,950 বিড়াল প্রতিলিপি নির্মাণ করতে সক্ষম হচ্ছে সম্পর্কে লিনাক্স কমান্ড, কপি করে প্রিন্ট আউট যে এক 216 00:10:38,950 --> 00:10:40,500 পর্দায়. 217 00:10:40,500 --> 00:10:43,510 ওয়েল, এখন আমরা ক্ষমতা আছে ফাইল থেকে অক্ষর পড়তে 218 00:10:43,510 --> 00:10:46,590 এবং, ফাইল অক্ষর লিখুন কেন আমরা শুধু যে-বদল করো না 219 00:10:46,590 --> 00:10:50,720 fputc একটি কল সঙ্গে printf থেকে কল. 220 00:10:50,720 --> 00:10:54,090 >> আর এখন আমরা CP সদৃশ থাকেন, একটি খুব মৌলিক লিনাক্স কমান্ড 221 00:10:54,090 --> 00:10:59,100 আমরা পথ দীর্ঘ সম্পর্কে বললাম যে আগে লিনাক্সে ভিডিও কমান্ড. 222 00:10:59,100 --> 00:11:01,070 আমরা কার্যকরভাবে করেছি এখানে ডান যে সদৃশ. 223 00:11:01,070 --> 00:11:04,790 আমরা একটি অক্ষর পড়ি এবং তারপর আমরা আছেন অন্য ফাইলে যে অক্ষর লেখা. 224 00:11:04,790 --> 00:11:07,660 একটি ফাইল থেকে পড়া, লেখা বহুবার অন্য, 225 00:11:07,660 --> 00:11:11,350 এবং উপর আবার আমরা ফাইলের শেষে আঘাত না হওয়া পর্যন্ত. 226 00:11:11,350 --> 00:11:14,250 আমরা শেষে পেয়েছেন ফাইল আমরা থেকে কপি করার চেষ্টা করছি. 227 00:11:14,250 --> 00:11:18,500 এবং যে আমরা সব লেখা আছে করব অক্ষরের আমরা ফাইল প্রয়োজন 228 00:11:18,500 --> 00:11:19,500 আমরা আপনাকে লিখছি যে. 229 00:11:19,500 --> 00:11:24,270 সুতরাং এই সিপি, লিনাক্স কপি কমান্ড. 230 00:11:24,270 --> 00:11:26,550 >> খুব প্রারম্ভে এই ভিডিওটি আমি সতর্কীকরণ ছিল 231 00:11:26,550 --> 00:11:29,840 আমরা একটি কথা বলতে চাই যে পয়েন্টার সম্পর্কে অল্প. 232 00:11:29,840 --> 00:11:32,480 আমরা যেখানে এখানে বিশেষভাবে হয় পয়েন্টার সম্পর্কে কথা বলতে যাচ্ছি 233 00:11:32,480 --> 00:11:34,800 উপরন্তু পয়েন্টার ফাইলে. 234 00:11:34,800 --> 00:11:37,870 সুতরাং এই ফাংশন ধরনের ভীতিকর দেখায়. 235 00:11:37,870 --> 00:11:39,120 এটা বিভিন্ন পরামিতি পেয়েছিলাম. 236 00:11:39,120 --> 00:11:40,430 এখানে যাওয়া অনেক আছে. 237 00:11:40,430 --> 00:11:42,760 বিভিন্ন অনেক আছে রং এবং গ্রন্থে. 238 00:11:42,760 --> 00:11:47,100 কিন্তু সত্যিই, এটা ঠিক ঠিক fgetc জেনেরিক সংস্করণ 239 00:11:47,100 --> 00:11:50,110 যে আমাদের কোনো পেতে পারবেন তথ্যের পরিমাণ. 240 00:11:50,110 --> 00:11:53,560 এটা আমরা করছি একটি বিট অদক্ষ হতে পারে একটি সময়ে অক্ষর এক পেয়ে, 241 00:11:53,560 --> 00:11:55,770 ফাইলের মাধ্যমে iterating একটি সময়ে এক চরিত্র. 242 00:11:55,770 --> 00:12:00,230 এটি পেতে nicer হবে না একটি সময়ে একটি সময় বা 500 এ 100? 243 00:12:00,230 --> 00:12:03,250 >> ওয়েল, fread এবং তার সহচর ফাংশন fwrite, আমরা যা সম্পর্কে আলোচনা করব 244 00:12:03,250 --> 00:12:05,490 একটি দ্বিতীয় মধ্যে, আমাদের ঠিক করতে অনুমতি দেয়. 245 00:12:05,490 --> 00:12:08,480 আমরা একটি অবাধ পরিমাণ পড়তে পারেন একটি ফাইল থেকে তথ্য 246 00:12:08,480 --> 00:12:10,290 এবং আমরা কোথাও সাময়িকভাবে সংরক্ষণ. 247 00:12:10,290 --> 00:12:12,980 পরিবর্তে শুধুমাত্র করতে সক্ষম হচ্ছে একটি একক ভেরিয়েবলের মধ্যে এটি মাপসই করা হবে, 248 00:12:12,980 --> 00:12:15,790 আমরা একটি অ্যারের মধ্যে এটি সংরক্ষণ করতে হবে পারে. 249 00:12:15,790 --> 00:12:19,980 আর তাই, আমরা চার পাস আর্গুমেন্ট একটি পয়েন্টার fread-- করতে 250 00:12:19,980 --> 00:12:23,940 আমরা যেখানে অবস্থান তথ্য সংরক্ষণ করে যাচ্ছে, 251 00:12:23,940 --> 00:12:29,180 কিভাবে তথ্য প্রতিটি ইউনিট বড় হতে হবে, তথ্য কত ইউনিট 252 00:12:29,180 --> 00:12:35,192 আমরা অর্জন করতে চান, এবং থেকে যা ফাইল আমরা তাদের পেতে চান. 253 00:12:35,192 --> 00:12:37,150 সম্ভবত সেরা সচিত্র এখানে একটি উদাহরণ দিয়ে. 254 00:12:37,150 --> 00:12:41,640 সুতরাং আসুন আমরা ঘোষণা যে বলা যাক 10 পূর্ণসংখ্যার একটি অ্যারে. 255 00:12:41,640 --> 00:12:45,080 আমরা শুধু ঘোষণা করেছি ইচ্ছামত গাদা তীর 10 int. 256 00:12:45,080 --> 00:12:46,970 সুতরাং যে বেশ সহজবোধ্য. 257 00:12:46,970 --> 00:12:51,970 এখন কি আমরা যদিও করছেন হয় frecall আমরা int মাপ পড়ি হয় 258 00:12:51,970 --> 00:12:54,180 বার তথ্য 10 বাইট. 259 00:12:54,180 --> 00:12:59,040 কোন int হচ্ছে আকার যে four-- সি একটি পূর্ণসংখ্যা মাপ. 260 00:12:59,040 --> 00:13:02,790 >> তাই কি আমরা করছেন আমরা পড়ি হয় তথ্য মূল্য 40 বাইট 261 00:13:02,790 --> 00:13:05,850 ফাইল থেকে কাজ খুঁজছেন এরকম দ্বারা জোরাল. 262 00:13:05,850 --> 00:13:08,600 এবং আমরা যারা সংরক্ষণ করছেন 40 বাইট কোথাও 263 00:13:08,600 --> 00:13:12,080 আমরা সেট একপাশে আছে যেখানে মেমরির মূল্য 40 বাইট. 264 00:13:12,080 --> 00:13:15,970 সৌভাগ্যবশত, আমরা ইতিমধ্যে দ্বারা যে কাজ করেছি যে অ্যারে অধিকার আছে, তীর ঘোষণা. 265 00:13:15,970 --> 00:13:19,770 যে ধারণ করতে সক্ষম হয় 10 চার বাইট ইউনিট. 266 00:13:19,770 --> 00:13:22,860 মোট সুতরাং, এটা 40 ধরে রাখতে পারেন বাইট তথ্য মূল্য. 267 00:13:22,860 --> 00:13:26,540 আর আমরা এখন 40 বাইট পড়া হয় ফাইল থেকে তথ্য, 268 00:13:26,540 --> 00:13:30,330 এবং আমরা আপনার কীবোর্ড মধ্যে এটি সংরক্ষণ করছেন. 269 00:13:30,330 --> 00:13:35,470 >> পয়েন্টার ভিডিও থেকে প্রত্যাহার করা যে যেমন আপনার কীবোর্ড হিসাবে একটি অ্যারের, নাম, 270 00:13:35,470 --> 00:13:38,370 সত্যিই শুধু একটি পয়েন্টার তার প্রথম উপাদান. 271 00:13:38,370 --> 00:13:43,680 তাই আমরা সেখানে তীরচিহ্ন মধ্যে পাশ করতে হলে, আমরা একটি পয়েন্টার ক্ষণস্থায়ী, আসলে, হয়. 272 00:13:43,680 --> 00:13:46,120 >> একইভাবে আমরা আপাততঃ করতে পারেন আমরা অগত্যা না 273 00:13:46,120 --> 00:13:51,200 স্ট্যাক আমাদের বাফার সংরক্ষণ করা প্রয়োজন. 274 00:13:51,200 --> 00:13:54,990 আমরা পরিবর্তনশীল বরাদ্দ পারে একটি malloc ব্যবহার, ভালো বাফার. 275 00:13:54,990 --> 00:13:57,340 যখন আমরা, মনে রেখো পরিবর্তনশীল মেমরি বরাদ্দ, 276 00:13:57,340 --> 00:14:00,550 আমরা উপর এটি সংরক্ষণ করছি গাদা না স্ট্যাক. 277 00:14:00,550 --> 00:14:02,110 কিন্তু এটি এখনও একটি বাফার. 278 00:14:02,110 --> 00:14:06,810 >> এটা এখনও এই ক্ষেত্রে, হয় তথ্য 640 বাইট ধারণ 279 00:14:06,810 --> 00:14:09,230 একটি ডবল আট বাইট পর্যন্ত সময় লাগে, কারণ. 280 00:14:09,230 --> 00:14:11,570 আর আমরা তাদের 80 জন্য বলছি. 281 00:14:11,570 --> 00:14:13,770 আমরা স্থান আছে চান 80 দ্বিগুণ রাখা. 282 00:14:13,770 --> 00:14:17,210 তাই 80 বার 8 640 বাইট তথ্য. 283 00:14:17,210 --> 00:14:21,880 আর fread যে কল তথ্য 640 বাইট সংগ্রহ 284 00:14:21,880 --> 00:14:27,770 ফাইল থেকে দ্বারা জোরাল PTR এবং arr2 এখন এটি সংরক্ষণ. 285 00:14:27,770 --> 00:14:32,770 >> এখন আমরা উদাহরণ fread বিবেচনা করতে পারেন শুধু ঠিক fgetc একটি কলের মত. 286 00:14:32,770 --> 00:14:37,140 এই ক্ষেত্রে, আমরা শুধু চেষ্টা করছেন ফাইল থেকে একটি অক্ষর পেতে. 287 00:14:37,140 --> 00:14:40,070 আর আমরা একটি প্রয়োজন হবে না অ্যারের একটি অক্ষর রাখা. 288 00:14:40,070 --> 00:14:43,170 আমরা শুধু এটা সংরক্ষণ করতে পারেন একটি অক্ষর পরিবর্তনশীল. 289 00:14:43,170 --> 00:14:46,390 >> ক্যাচ, যদিও, যে হয় আমরা শুধু একটি পরিবর্তনশীল আছে, 290 00:14:46,390 --> 00:14:50,290 আমরা পাস করতে হবে যে পরিবর্তনশীল এর ঠিকানা 291 00:14:50,290 --> 00:14:52,550 রিকল যে কারণ fread প্রথম যুক্তি 292 00:14:52,550 --> 00:14:59,210 পাঁচ এবং মেমরি একটি পয়েন্টার আমরা তথ্য সংরক্ষণ করতে চান যেখানে. 293 00:14:59,210 --> 00:15:01,550 আবার, একটি নাম অ্যারের একটি পয়েন্টার. 294 00:15:01,550 --> 00:15:04,200 সুতরাং আমরা এম্পারসেন্ড অ্যারের করতে হবে না. 295 00:15:04,200 --> 00:15:07,270 কিন্তু সি, চরিত্র গ এখানে, একটি অ্যারের নয়. 296 00:15:07,270 --> 00:15:08,390 এটি শুধু একটি পরিবর্তনশীল. 297 00:15:08,390 --> 00:15:11,840 আর তাই আমরা একটি পাস করতে হবে এম্পারসেন্ড সি ইঙ্গিত 298 00:15:11,840 --> 00:15:15,350 যে আমরা চাই যেখানে অঙ্ক যে তথ্য এই এক বাইট ধারণ করার, 299 00:15:15,350 --> 00:15:20,479 এই এক চরিত্র যে আমরা খুঁজছেন এরকম থেকে সংগ্রহ করছেন. 300 00:15:20,479 --> 00:15:22,270 আমি মধ্য দিয়ে যেতে হবে Fwrite-- এই একটু বেশি 301 00:15:22,270 --> 00:15:25,440 quickly-- প্রায় কাছাকাছি fread সঠিক সমতুল্য 302 00:15:25,440 --> 00:15:27,720 এটা লেখার জন্য ছাড়া পরিবর্তে পড়ার, শুধু 303 00:15:27,720 --> 00:15:31,610 other-- মত আমরা খোলা ছিল করেছি এবং বন্ধ, একটি চরিত্র পেতে, 304 00:15:31,610 --> 00:15:32,530 একটি অক্ষর লিখুন. 305 00:15:32,530 --> 00:15:35,040 এখন এটা অবাধ পেতে এর তথ্য পরিমাণ, 306 00:15:35,040 --> 00:15:37,170 তথ্য অধিকার অবাধ পরিমাণ. 307 00:15:37,170 --> 00:15:39,790 তাই ঠিক আগের মতই, আমরা যা করতে পারেন 10 পূর্ণসংখ্যার একটি অ্যারে আছে 308 00:15:39,790 --> 00:15:43,210 যেখানে আমরা আগে থেকেই আছে তথ্য সম্ভবত, সংরক্ষিত. 309 00:15:43,210 --> 00:15:46,580 >> এটা সম্ভবত কিছু কোড লাইন ছিল যে এই দুই এর মধ্যে যেতে হবে 310 00:15:46,580 --> 00:15:49,990 আমি সঙ্গে arr পূরণ যেখানে অর্থপূর্ণ কিছু. 311 00:15:49,990 --> 00:15:51,880 আমি 10 বিভিন্ন পূর্ণসংখ্যার দিয়ে ফিল করুন. 312 00:15:51,880 --> 00:15:54,920 এবং পরিবর্তে, আমি কি করছি করছেন তীর থেকে লেখা হয় 313 00:15:54,920 --> 00:15:58,600 এবং তীর থেকে তথ্য সংগ্রহ করা. 314 00:15:58,600 --> 00:16:02,390 আর আমি যে তথ্য গ্রহণ করছি এবং ফাইলের মধ্যে এটি নির্বাণ. 315 00:16:02,390 --> 00:16:05,410 >> সুতরাং পরিবর্তে তা থেকে হচ্ছে বাফার ফাইল, 316 00:16:05,410 --> 00:16:08,790 আমরা এখন থেকে যাচ্ছেন ফাইলে বাফার. 317 00:16:08,790 --> 00:16:10,580 তাই এটা শুধু বিপরীত. 318 00:16:10,580 --> 00:16:16,680 ঠিক আগের মতই তাই আবার, আমরা যা করতে পারেন স্মরণশক্তির এক গাদা খণ্ড আছে 319 00:16:16,680 --> 00:16:19,600 আমরা পরিবর্তনশীল করেছি যে বরাদ্দ এবং যে থেকে পড়তে 320 00:16:19,600 --> 00:16:21,570 এবং ফাইলে যে লিখতে. 321 00:16:21,570 --> 00:16:24,900 >> এবং আমরা একটি একক পরিবর্তনশীল আছে এক বাইট ধারণ করতে সক্ষম 322 00:16:24,900 --> 00:16:27,200 যেমন একটি চরিত্র হিসাবে তথ্য,. 323 00:16:27,200 --> 00:16:29,830 কিন্তু আবার, আমরা পাস করতে হবে যে পরিবর্তনশীল এর ঠিকানা 324 00:16:29,830 --> 00:16:31,840 আমরা তা থেকে পড়তে চান. 325 00:16:31,840 --> 00:16:35,280 সুতরাং আমরা তথ্য লিখে রাখতে পারেন আমরা যে ঠিকানায় খুঁজে 326 00:16:35,280 --> 00:16:39,050 ফাইল পয়েন্টার, PTR. 327 00:16:39,050 --> 00:16:41,630 >> অন্যান্য প্রচুর আছে মহান ফাইল ইনপুট / আউটপুট ফাংশন 328 00:16:41,630 --> 00:16:44,650 এ ছাড়া বিভিন্ন ধরনের জিনিস বেশী আমরা আজ স্বপ্ন করেছি. 329 00:16:44,650 --> 00:16:46,450 বেশী কয়েক আপনার কাজে লাগতে পারে 330 00:16:46,450 --> 00:16:50,840 fgets এবং fputs হয়, যা হয় সমতুল্য 331 00:16:50,840 --> 00:16:56,190 ঠিক fgetc এবং fputc কিন্তু পড়ার জন্য একটি ফাইল থেকে একটি একক পংক্তি. 332 00:16:56,190 --> 00:16:59,020 পরিবর্তে একটি একক চরিত্রের, এটি একটি সম্পূর্ণ পংক্তি পড়তে হবে. 333 00:16:59,020 --> 00:17:02,940 মূলত পারবেন যা fprintf, আপনি ফাইলে লিখতে printf ব্যবহার করতে. 334 00:17:02,940 --> 00:17:05,619 আপনি করতে পারেন, তাই ঠিক মত ব্যবহার পরিবর্তনশীল উপকল্পন 335 00:17:05,619 --> 00:17:09,900 স্থানধারক শতাংশ আমি ও printf সঙ্গে শতাংশ D, এবং তাই, 336 00:17:09,900 --> 00:17:14,690 আপনি একইভাবে নিতে পারেন printf, স্ট্রিং এবং কিছু প্রিন্ট 337 00:17:14,690 --> 00:17:16,800 একটি ফাইলে যে মত. 338 00:17:16,800 --> 00:17:20,720 >> fseek-- আপনি একটি ডিভিডি প্লেয়ার আছে আমি সাধারণত এখানে ব্যবহার উপমা 339 00:17:20,720 --> 00:17:23,109 সাজানোর ব্যবহার করে ভালো হয় আপনার গুটিয়ে এবং দ্রুত এগিয়ে 340 00:17:23,109 --> 00:17:25,819 বোতাম ছবিটির প্রায় সরাতে. 341 00:17:25,819 --> 00:17:28,369 একইভাবে, আপনি ফাইল কাছাকাছি স্থানান্তর করতে পারেন. 342 00:17:28,369 --> 00:17:30,250 ভিতরে কিছু এক যে ফাইল গঠন 343 00:17:30,250 --> 00:17:34,270 আপনি একটি সূচক জন্য যে সি সৃষ্টি যেখানে আপনি ফাইল আছে. 344 00:17:34,270 --> 00:17:36,420 আপনি খুব এ আছেন বাইট শূন্য এ, প্রারম্ভে? 345 00:17:36,420 --> 00:17:39,290 আপনি বাইট 100 এ আছে, বাইট 1,000, এবং তাই? 346 00:17:39,290 --> 00:17:44,340 আপনি ইচ্ছামত সরাতে fseek ব্যবহার করতে পারেন এগিয়ে অথবা পিছিয়ে যে নির্দেশক. 347 00:17:44,340 --> 00:17:46,744 >> এবং আবার, ftell একটি ডিভিডি প্লেয়ার অনুরূপ, 348 00:17:46,744 --> 00:17:49,660 বলে যে একটি সামান্য ঘড়ি ভালো হয় আপনি কত মিনিট এবং সেকেন্ডের আপনি 349 00:17:49,660 --> 00:17:52,480 একটি নির্দিষ্ট সিনেমা মধ্যে হয়. 350 00:17:52,480 --> 00:17:56,990 একইভাবে, ftell আপনি কিভাবে বলে অনেক বাইট আপনি ফাইলে আছে. 351 00:17:56,990 --> 00:18:00,210 feof একটি ভিন্ন সংস্করণ আপনাকে করেছি কিনা সনাক্ত 352 00:18:00,210 --> 00:18:01,700 ফাইলের শেষে পৌঁছে. 353 00:18:01,700 --> 00:18:03,600 আর ferror একটি ফাংশন আপনি ব্যবহার করতে পারেন যে 354 00:18:03,600 --> 00:18:06,959 কিছু আছে কিনা তা বের করা একটি ফাইলের সাথে ভুল কাজ চলে. 355 00:18:06,959 --> 00:18:08,750 আবার, এই মাত্র হল প্রারম্ভিক. 356 00:18:08,750 --> 00:18:12,730 প্রচুর আরো ফাইল ইনপুট / আউটপুট এখনও নেই প্রমিত io.h. ইন ফাংশান 357 00:18:12,730 --> 00:18:16,620 কিন্তু সম্ভবত এই আপনি পাবেন ফাইল পয়েন্টার দিয়ে কাজ শুরু করে. 358 00:18:16,620 --> 00:18:17,640 আমি ডগ লয়েড আছি. 359 00:18:17,640 --> 00:18:19,750 এই CS50. 360 00:18:19,750 --> 00:18:21,669