আমি আমার সহকর্মীর কাছ থেকে শিখেছি যে কোনও main()
ফাংশন না লিখেই কোনও সি প্রোগ্রাম লিখতে এবং সম্পাদন করতে পারে। এটি এইভাবে করা যেতে পারে:
my_main.c
/* Compile this with gcc -nostartfiles */
#include <stdlib.h>
void _start() {
int ret = my_main();
exit(ret);
}
int my_main() {
puts("This is a program without a main() function!");
return 0;
}
এটি এই আদেশের সাথে সংকলন করুন:
gcc -o my_main my_main.c –nostartfiles
এই আদেশ দিয়ে এটি চালান:
./my_main
এই ধরণের জিনিসটি কখন করা দরকার? এমন কোনও বাস্তব বিশ্বের দৃশ্যপট আছে যেখানে এটি কার্যকর হবে?
_start()
বাইরে এবং এর বাইরে অন্যান্য স্টাফ নিয়ে আলোচনা করে main()
।
_start
বা অন্য কোনও প্রবেশ পয়েন্ট সম্পর্কে কিছুই বলে না main
(এন্ট্রি পয়েন্টের নামটি फ्रीস্ট্যান্ডিং (এম্বেডেড) বাস্তবায়নের জন্য বাস্তবায়ন-সংজ্ঞায়িত)।