সি এবং সি ++ তে চরিত্রের আকার কত? আমি যতদূর জানি সি এবং সি ++ উভয় ক্ষেত্রে চরের আকার 1 বাইট।
#include <stdio.h>
int main()
{
printf("Size of char : %d\n", sizeof(char));
return 0;
}
#include <iostream>
int main()
{
std::cout << "Size of char : " << sizeof(char) << "\n";
return 0;
}
এতে অবাক হওয়ার কিছু নেই, উভয়ই আউটপুট দেয়: Size of char : 1
এখন আমরা জানি যে অক্ষর প্রতিনিধিত্ব করা হয় যেমন 'a'
, 'b'
, 'c'
, '|'
, ... তাই আমি শুধুমাত্র এই উপরের কোড সংশোধিত:
সি তে:
#include <stdio.h>
int main()
{
char a = 'a';
printf("Size of char : %d\n", sizeof(a));
printf("Size of char : %d\n", sizeof('a'));
return 0;
}
Size of char : 1
Size of char : 4
সি ++ এ:
#include <iostream>
int main()
{
char a = 'a';
std::cout << "Size of char : " << sizeof(a) << "\n";
std::cout << "Size of char : " << sizeof('a') << "\n";
return 0;
}
Size of char : 1
Size of char : 1
sizeof('a')
সি এবং সি ++ এ কেন বিভিন্ন মান ফেরত দেয়?
"%|"
বিন্যাস একটি প্রয়োজনint
যুক্তি (অথবা কিছু যে করতে প্রচার করেint
)।sizeof
ধরণের ফলাফল দেয়size_t
। হয় কোনওint
কাস্ট ব্যবহার করে রূপান্তর করুন বা, যদি আপনার প্রয়োগটি এটি সমর্থন করে তবে ব্যবহার করুন"%zu"
।