কম্পিউটার

সি-তে আপনার নিজের সাইজ কীভাবে বাস্তবায়ন করবেন


sizeof() ব্যবহার করতে আমরা একটি ভেরিয়েবল x ব্যবহার করে মান নিতে পারি, &x ব্যবহার করে, এটি এর ঠিকানা প্রিন্ট করবে। এখন আমরা যদি &x এর মান বাড়াই তাহলে তা ভিন্নভাবে বাড়তে পারে। যদি শুধুমাত্র একটি বাইট বৃদ্ধি করা হয়, তার মানে এটি অক্ষর, যদি বর্ধিত মান 4 হয়, তাহলে এটি int বা float ইত্যাদি। সুতরাং &x + 1 এবং &x এর মধ্যে পার্থক্য নিলে, আমরা x এর আকার পেতে পারি।

এখানে আমরা ম্যাক্রো ব্যবহার করব কারণ ফাংশনে ডেটাটাইপ সংজ্ঞায়িত করা হয়নি। এবং আরও একটি জিনিস, আমরা (char*) ব্যবহার করে কাস্ট করছি, তাই এটি আমাদের বলে দেবে যে সেই জায়গায় কতগুলি অক্ষর টাইপ ডেটা রাখা যেতে পারে। যেহেতু অক্ষরটি এক বাইট ডেটা নেয়।

উদাহরণ

#include <stdio.h>
#define my_sizeof(type) (char *)(&type+1)-(char*)(&type)
main(void) {
   int x = 10;
   char y = 'f';
   double z = 254748.23;
   printf("size of x: %d\n", my_sizeof(x));
   printf("size of y: %d\n", my_sizeof(y));
   printf("size of z: %d\n", my_sizeof(z));
}

আউটপুট

size of x: 4
size of y: 1
size of z: 8

  1. কিভাবে আপনার নিজের ক্লাউড পিসি সেট আপ করবেন

  2. কিভাবে আপনার নিজের উইকি সাইট তৈরি করবেন

  3. কিভাবে আপনার নিজের YouTube চ্যানেল তৈরি করবেন

  4. কিভাবে আপনার নিজের QR কোড তৈরি করবেন?