কম্পিউটার

সি-তে মেমরি বরাদ্দ এবং সংকলন প্রক্রিয়ার উপর MCQ


এখানে আমরা মেমরি বরাদ্দ এবং সংকলন প্রক্রিয়ার উপর কিছু MCQ প্রশ্ন দেখব।

প্রশ্ন 1 - নিচের কোডের আউটপুট কি হবে −

#include <stdio.h>
#include <stdlib.h>
int main() {
   union my_union {
      int i;
      float f;
      char c;
   };
   union my_union* u;
   u = (union my_union*)malloc(sizeof(union my_union));
   u->f = 20.60f;
   printf("%f", u->f);
}

বিকল্পগুলি৷ −

  • আবর্জনার মান
  • 20.600000
  • সিনট্যাক্স ত্রুটি
  • 20.6

ব্যাখ্যা

ইউনিয়নগুলি ব্যবহার করে, আমরা একাধিক ধরণের ডেটা ধরে রাখতে একই মেমরি অবস্থান ব্যবহার করতে পারি। ইউনিয়নের সকল সদস্য একই মেমরি অবস্থান ব্যবহার করে যার সর্বোচ্চ স্থান রয়েছে। এখানে float ব্যবহার করা হয়েছে, যার 20.60f =20.600000 আছে। তাই উত্তর B সঠিক।

প্রশ্ন 2 − সংকলন প্রক্রিয়ার সঠিক ক্রম কী −

বিকল্পগুলি৷ −

  • অ্যাসেম্বলার, কম্পাইলার, প্রিপ্রসেসর, লিঙ্কিং
  • কম্পাইলার, অ্যাসেম্বলার, প্রিপ্রসেসর, লিঙ্কিং
  • প্রিপ্রসেসর, কম্পাইলার, অ্যাসেম্বলার, লিঙ্কিং
  • অ্যাসেম্বলার, কম্পাইলার, লিঙ্কিং, প্রিপ্রসেসর

ব্যাখ্যা

সি বিকল্পটি সঠিক, প্রথমে এটি কোডটি প্রিপ্রসেস করে, তারপর এটি কম্পাইল করে, তারপরে এটি অ্যাসেম্বলি লেভেল কোড বা অবজেক্ট কোড তৈরি করে, তারপরে লিঙ্ক করা হয়৷

প্রশ্ন 3 - নিচের কোন বিবৃতিটি সত্য?

বিকল্পগুলি৷ −

  • কোড লিঙ্ক করার সময় #include stdio.h দ্বারা প্রতিস্থাপিত হয়
  • কোড প্রিপ্রসেস করার সময় #include stdio.h দ্বারা প্রতিস্থাপিত হয়
  • নির্বাহের সময় কোড #include stdio.h দ্বারা প্রতিস্থাপিত হয়
  • কোড এডিট করার সময় #include stdio.h দ্বারা প্রতিস্থাপিত হয়

ব্যাখ্যা

বি বিকল্পটি সঠিক। প্রথমে, এটি প্রি-প্রসেসড কোড তৈরি করে, সেই পর্যায়ে, এটি কোডে #include স্টেটমেন্টে উল্লিখিত ফাইলে উপস্থিত কোডগুলি সংযুক্ত করে তারপর কম্পাইলারে পাঠানো হয়।

প্রশ্ন 4 − fflush() ফাংশন −

ব্যবহার করার উদ্দেশ্য

বিকল্পগুলি৷ −

  • সমস্ত স্ট্রীম এবং নির্দিষ্ট স্ট্রীম ফ্লাশ করতে
  • শুধুমাত্র নির্দিষ্ট স্ট্রীম ফ্লাশ করতে
  • ইনপুট-আউটপুট বাফার ফ্লাশ করতে
  • এটি অবৈধ লাইব্রেরি ফাংশন

ব্যাখ্যা

এই ফাংশনটি শুধুমাত্র আউটপুট স্ট্রিম ফ্লাশ করতে ব্যবহৃত হয়। এটি আউটপুট বাফার পরিষ্কার করে এবং কনসোলে আউটপুট পাঠায়। A বিকল্পটি সঠিক।

প্রশ্ন 5 − নিম্নলিখিত কোডের ত্রুটি নির্দেশ করুন −

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
   char* ptr;
   *ptr = (int*)malloc(30);
   strcpy(ptr, "ABC");
   printf("%s", ptr);
   free(ptr);
}

বিকল্পগুলি৷ −

  • strcpy() স্টেটমেন্টে ত্রুটি
  • *ptr =(int*)malloc(30);
  • -এ ত্রুটি
  • বিনামূল্যে (ptr) ত্রুটি
  • কোন ত্রুটি নেই

ব্যাখ্যা

বি বিকল্পটি সঠিক। এখানে এটি একটি কাস্ট ছাড়াই পয়েন্টার থেকে পূর্ণসংখ্যা তৈরি করে


  1. আইপি হেল্পার সার্ভিস (iphlpsvc.exe) প্রক্রিয়া উচ্চ মেমরি এবং ইন্টারনেট ডেটা ব্যবহার করে

  2. উইন্ডোজ 11/10-এ শারীরিক মেমরি বরাদ্দ, মেমরির সীমা এবং মেমরি স্ট্যাটাস

  3. ঠিক করুন:wsappx দ্বারা উচ্চ CPU এবং মেমরি ব্যবহার

  4. Windows 10 এ সিস্টেম এবং সংকুচিত মেমরি দ্বারা 100% ডিস্কের ব্যবহার ঠিক করুন