我有这个操作(8*(512*786432)),乘积是3221225472我尝试将它与longlong、unsignedlong等变量一起使用但是编译器报错c4307积分常量溢出我需要将结果与函数一起使用,我该如何修复它?或者什么变量可以适用于大数?问候 最佳答案 表达式(8*(512*786432))的类型为int并且它将在32位系统上溢出。将它分配给long类型的变量并不会改变该值已经溢出的事实。您可以通过注释数字来解决此问题。longx=(8L*(512L*786432L));您只需将L放在其中一个数字上,因为它会强制结果也具有