Rumah >pembangunan bahagian belakang >C++ >Mengapakah Huruf Integer Terlalu Besar dalam C dan C Kadangkala Tidak Default kepada `int`?
Huruf Integer: Tidak Sentiasa Int Secara Lalai
Semasa berulang dalam gelung, literal integer yang terlalu besar boleh membawa kepada isu yang tidak dijangka. Biasanya, literal tanpa akhiran ditafsirkan sebagai int. Walau bagaimanapun, andaian ini mungkin tidak sesuai untuk nilai yang sangat besar.
Limpahan dan Promosi
Apabila integer literal melebihi julat int (biasanya 32-bit), tidak ditentukan tingkah laku (UB) boleh terhasil. Walau bagaimanapun, dalam sesetengah kes, pengkompil mungkin secara automatik mempromosikan literal kepada jenis yang lebih besar, seperti long int (yang biasanya 64-bit).
Spesifikasi Standard
Kedua-dua piawaian C dan C mengawal selia promosi literal integer mengikut kesesuaian jenis.
Contoh
Pertimbangkan integer literal 10000000000. Dalam persekitaran C, ini akan ditafsirkan sebagai int panjang. Walau bagaimanapun, jika pengkompil yang digunakan ialah pengkompil 32-bit, ini boleh mengakibatkan ralat kompilasi kerana literalnya terlalu besar untuk jenis integer yang tersedia.
Atas ialah kandungan terperinci Mengapakah Huruf Integer Terlalu Besar dalam C dan C Kadangkala Tidak Default kepada `int`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!