আমি সবেমাত্র কারও সি কোড পেয়েছি যা কেন এটি সংকলন করছে তা নিয়ে আমি বিভ্রান্ত। দুটি বিষয় আছে যা আমি বুঝতে পারি না।
প্রথমত, ফাংশন প্রোটোটাইপের আসল ফাংশন সংজ্ঞাটির সাথে তুলনা করে কোনও প্যারামিটার নেই। দ্বিতীয়ত, ফাংশন সংজ্ঞায়নের প্যারামিটারের কোনও প্রকার নেই।
#include <stdio.h>
int func();
int func(param)
{
return param;
}
int main()
{
int bla = func(10);
printf("%d", bla);
}
কেন এই কাজ করে? আমি এটি কয়েক সংকলকের পরীক্ষিত করেছি এবং এটি ভাল কাজ করে।
-Wstrict-prototypes
এই int func()
এবং int main()
: xc: 3: সতর্কতা: ফাংশন ঘোষণা কোনও প্রোটোটাইপ নয় উভয়ের জন্য সতর্ক করে । আপনার পাশাপাশি ঘোষণা main()
করা উচিত main(void)
।
int func();
এটির সাথে সামঞ্জস্যপূর্ণ int func(arglist) { ... }
।
int main(void)
।