C-এ tmpfile() ফাংশন বাইনারি আপডেট মোডে একটি টেম্পোরারি ফাইল তৈরি করে। এটি C প্রোগ্রামের হেডার ফাইলে আরম্ভ হয়। যদি টেম্পোরারি ফাইল তৈরি করা না যায় তবে এটি সর্বদা নাল পয়েন্টার রিটার্ন করে। প্রোগ্রাম টার্মিনেট হওয়ার ঠিক পরে টেম্পোরারি ফাইলটি স্বয়ংক্রিয়ভাবে ডিলিট হয়ে যায়।
সিনট্যাক্স
FILE *tmpfile(void)
রিটার্ন ভ্যালু
ফাইল তৈরির সফল হলে, ফাংশনটি তৈরি করা টেম্পোরারি ফাইলের একটি স্ট্রিম পয়েন্টার রিটার্ন করে। ফাইল তৈরি না হলে, NULL পয়েন্টার রিটার্ন করা হয়।
অ্যালগরিদম
শুরু. c[] ক্যারেক্টার ডেটা টাইপের একটি অ্যারে ভেরিয়েবল ঘোষণা করুন এবং একটি ক্যারেক্টার ডেটা স্ট্রিং নিন। i ইন্টিজার ভেরিয়েবল ০ দিয়ে আরম্ভ করুন। FILE ডেটা টাইপের একটি newfile পয়েন্টার ঘোষণা করুন। newfile ফাইল পয়েন্টারকে টেম্পোরারি ফাইল হিসেবে बनाने tmpfile() ফাংশন কল করুন। "nfile.txt" ফাইলটি ওপেন করুন newfile ফাইল পয়েন্টার ব্যবহার করে রাইট অপারেশন করতে। if (newfile == NULL) then "টেম্পোরারি ফাইল তৈরি করতে সমস্যা" প্রিন্ট করুন। ০ রিটার্ন করুন। "টেম্পোরারি ফাইল সফলভাবে তৈরি হয়েছে" প্রিন্ট করুন। while (c[i] != '\0') do c[] এর সকল ডেটা newfile ফাইল পয়েন্টারে পুট করুন। i++। ফাইল পয়েন্টার বন্ধ করতে fclose() ফাংশন কল করুন। "nfile.txt" ফাইলটি ওপেন করুন newfile ফাইল পয়েন্টার ব্যবহার করে রিড অপারেশন করতে। ফাইল পয়েন্টারের স্ট্রিমের শুরুতে পয়েন্টার সেট করতে rewind() ফাংশন কল করুন। while (!feof(newfile)) do newfile ফাইল পয়েন্টারের সকল ডেটা প্রিন্ট করতে putchar() ফাংশন কল করুন। ফাইল পয়েন্টার বন্ধ করতে fclose() ফাংশন কল করুন। শেষ।
উদাহরণ
#include <stdio.h> int main() { char c[] = "Tutorials Point"; int i = 0; FILE* newfile = tmpfile(); // ফাইল পয়েন্টারকে টেম্পোরারি ফাইল বানান। newfile = fopen("nfile.txt", "w"); if (newfile == NULL) { puts("টেম্পোরারি ফাইল তৈরি করতে সমস্যা"); return 0; } puts("টেম্পোরারি ফাইল সফলভাবে তৈরি হয়েছে"); while (c[i] != '\0') { fputc(c[i], newfile); i++; } fclose(newfile); newfile = fopen("nfile.txt", "r"); rewind(newfile); // ফাইল পয়েন্টারের স্ট্রিমের শুরুতে পয়েন্টার সেট করুন। while (!feof(newfile)) putchar(fgetc(newfile)); fclose(newfile); // ফাইল পয়েন্টার বন্ধ করা হচ্ছে }আউটপুট
টেম্পোরারি ফাইল সফলভাবে তৈরি হয়েছে Tutorials Point