%d mit Long Int

Ist der folgende code Korrekt?Soweit mein Verständnis,sollte es nicht funktionieren,aber auf der Dev-C++ - Compiler,der es tut.Könnte mir jemand im detail erklären, bitte?

#include<limits.h>

int main()
{
long int num_case=LONG_MAX;

scanf("%d",&num_case);

printf("%ld",num_case);
return 0;
}

Dank

Sollten Sie scanf für eine %ld wenn es das ist, was Sie erwarten. Aber seit ein long ist größer als Ihre typische int es ist kein Problem mit diesem.
verwenden Sie nicht den compiler, der kommt mit Dev-C++ - es ist extrem veraltet! Siehe jasonbadams.net/20081218/why-you-shouldnt-use-dev-c

InformationsquelleAutor nikel | 2012-04-26

Schreibe einen Kommentar