【发布时间】:2012-05-06 20:56:04
【问题描述】:
以下代码是否正确?据我了解,它应该无法正常工作,但在 Dev-C++ 编译器上,它可以。有人可以详细解释一下吗?
#include<limits.h>
int main()
{
long int num_case=LONG_MAX;
scanf("%d",&num_case);
printf("%ld",num_case);
return 0;
}
谢谢
【问题讨论】:
-
如果这是您所期望的,您应该
scanf获得%ld。但是由于long比典型的int大,所以这没有问题。 -
不要使用 Dev-C++ 自带的编译器——它已经非常过时了!见jasonbadams.net/20081218/why-you-shouldnt-use-dev-c
标签: c printf long-integer scanf