C:
ডিবাগ আউটপুট প্রিন্ট করা
কিভাবে:
C তে, ডিবাগ আউটপুট প্রিন্ট করার সর্বাধিক প্রচলিত পদ্ধতি হল স্ট্যান্ডার্ড I/O লাইব্রেরি থেকে printf ফাংশন ব্যবহার করা। printf ফাংশনটি টাইপড আউটপুট স্ট্যান্ডার্ড আউটপুট ডিভাইসে, সাধারণত স্ক্রিনে, ব্যবহার করার অনুমতি দেয়। এখানে একটি সাধারণ উদাহরণ দেওয়া হল:
#include <stdio.h>
int main() {
int x = 5;
printf("Debug: x এর মান হল %d\n", x);
// এখানে আপনার প্রোগ্রাম যুক্তি থাকবে
return 0;
}নমুনা আউটপুট:
Debug: x এর মান হল 5আরও উন্নত ডিবাগ প্রিন্টিং এর জন্য, আপনি ফাইলের নাম এবং লাইন নম্বরের তথ্য অন্তর্ভুক্ত করতে চাইতে পারেন। এটা __FILE__ এবং __LINE__ প্রাক-নির্ধারিত ম্যাক্রো ব্যবহার করে এমনভাবে করা যায়:
#define DEBUG_PRINT(fmt, args...) fprintf(stderr, "DEBUG: %s:%d: " fmt, __FILE__, __LINE__, ##args)
int main() {
int testValue = 10;
DEBUG_PRINT("পরীক্ষা মানটি %d\n", testValue);
// এখানে আপনার প্রোগ্রাম যুক্তি থাকবে
return 0;
}নমুনা আউটপুট:
DEBUG: example.c:6: পরীক্ষা মানটি 10এই উদাহরণে, আমরা ডিবাগ বার্তার জন্য মানকের ভুল স্ট্রিম (stderr) এ আউটপুট পাঠাতে fprintf ব্যবহার করছি, যা প্রায়শই উপযুক্ত হয়।
গভীর ডুব
ইতিহাসগতভাবে, C ভাষায় ডিবাগিং পদ্ধতিগুলি ম্যানুয়াল এবং প্রাথমিক হয়েছে, ভাষার কাছাকাছি-হার্ডওয়্যার দর্শন এবং বয়সের কারণে। আধুনিক ভাষাগুলি উন্নত, অন্তর্নির্মিত ডিবাগিং লাইব্রেরি অন্তর্ভুক্ত করতে পারে অথবা ইনটিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট (IDE) বৈশিষ্ট্যগুলিতে ভারি নির্ভর করতে পারে, C প্রোগ্রামাররা প্রায়শই তাদের প্রোগ্রামের নির্বাহকে ট্রেস করতে উপরে দেখানো মুদ্রণ বিবৃতিগুলি ম্যানুয়ালভাবে প্রবেশ করাতে আগ্রহী।
ডিবাগ প্রিন্টগুলির সাথে সাবধান থাকার একটি বিষয় হচ্ছে তাদের আউটপুট জটিল করে দেয়া এবং উৎপাদন কোডে অনিচ্ছাকৃতভাবে রেখে দেওয়ার কারণে কর্মক�্যতার সমস্যা সৃষ্টি করা, বিশেষ করে। এই কারণেই, শর্তসাপেক্ষ সংকলন (যেমন, #ifdef DEBUG ... #endif) ব্যবহার করা ভালো হতে পারে, যা সংকলন-সময়ের পতাকা ভিত্তিক ডিবাগ বিবৃতিগুলি অন্তর্ভুক্ত করা বা বাদ দেওয়ার অনুমতি দেয়।
তারপরেও, printf ডিবাগিং এর সাধারণতা এবং তাৎক্ষণিক ফিডব্যাক হ্রাস করা যায় না, এটি বিশেষ করে C এর জটিলতাগুলি শেখার ক্ষেত্রে প্রোগ্রামারের টুলবক্সে একটি দরকারী টুল হিসেবে প্রতিষ্ঠিত করে।