Thaks for immediate reply...
how to convert unsigned long long int64_t for gcc
compiler
Current versions of gcc support unsigned long long and current versions
of libraries supplied with gcc have the header <stdint.h> with int64_t
defined there. If you upgrade to a current version of gcc and supplied
libraries, remove the typedef for int64_t from your code and add
#include <stdint.h> to the top of your code.
Otherwise, if you continue to use a (very) old version of gcc without
long long, then you have no type available for int64_t. You can, of
course, lie and
typedef unsigned long int64_t;
but that is not recommended.
It is possible that you are compiling with flags that disable
recognition of long long. 'long long' is not in ISO C90, so compilation
with -std=c89 or its equivalent -ansi _may_ disable recognition of long
long. gcc will, unless told to treat warnings as errors, properly
handle long long but emit warnings. You want to use -std=c99.
If you are compiling without specifying the -std, your copy of gcc will
compile a language very much like C, but not quite. The version of the
nonstandard 'GNU C' language chosen will probably be -std=gnu89, which
will generate diagnostics for long long. For posting to comp.lang.c,
you always want to specify a version of standard C, -ansi or -std=c90
for the old standard, -std=c99 for an attempt at conforming to the new
standard. _Never_ post code for which GNU C is the language used, and
since not specifying a standard is the same as -std=gnu89, that is to be
avoided.