Menyesuaikan Argumen utama dalam C
Tandatangan lalai untuk utama dalam C terkenal: int main() dan int main (int, char*[]). Walau bagaimanapun, timbul persoalan:
Bolehkah hujah utama diubah suai dengan kelayakan seperti tidak ditandatangani dan const?
Ujian saya menunjukkan ya, tetapi kebimbangan kekal tentang potensi beban berlebihan atau pelanggaran Piawaian C.
Menurut piawaian C 98 (bahagian 3.6.1 perenggan 2), beban utama adalah dilarang. Piawaian secara eksplisit menyatakan bahawa main mesti mempunyai jenis pengembalian int, tetapi aspek lain ditentukan oleh pelaksanaan.
Terutamanya, piawaian tidak melarang penggunaan hujah dengan pelayakkan seperti unsigned dan const. Walaupun ia tidak dimandatkan oleh piawai, ia dibenarkan untuk pelaksanaan menerima pengubahsuaian ini.
Persekitaran berdiri bebas, di mana gelagat permulaan dan penamatan ditakrifkan pelaksanaan, dikecualikan daripada peraturan ini dan dokumentasi mungkin memperincikan gelagat tertentu.
Atas ialah kandungan terperinci Bolehkah Argumen `utama` dalam C Diubah Suai dengan `tidak ditandatangani` dan `const`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!