我不明白printf函数l
和ll
长度说明的区别:为什么“L”和“LL”修饰符做同样的printf(C)
printf("%ld \n", 9999999991474836499);
printf("%lld \n", 9999999991474836499);
两个printf的使同样的输出,因为该类型的溢出:
-8446744082234715117
-8446744082234715117
所以,当我删除一个数字我做的:
printf("%ld \n", 999999999147483649);
printf("%lld \n", 999999999147483649);
我得到相同的输出:
999999999147483649
999999999147483649
没有溢出。
我不明白l
意思是long int
和ll
那么平均long long int
为什么他们没有什么区别?
是什么'长int'和'长的长整型之间的区别'在你的平台上? –
我使用这个在线编译器来执行我的测试:https://www.tutorialspoint.com/compile_c_online.php – Sadek
对你的程序有帮助的补充是:'printf(“%zu%zu \ n”,sizeof( long),sizeof(long long));'如果它们是相同的,那就是为什么输出是原样的。 – eddiem