C/C++µÄ64λÕûÐÍ ²»Í¬±àÒëÆ÷¼äµÄ±È½Ï
//ΪÁ˺ÍDSP¼æÈÝ£¬TSint64ºÍTUint64ÉèÖóÉTSint40ºÍTUint40Ò»ÑùµÄÊý
//½á¹ûVCÖл¹ÊÇÈÏΪÊÇ32λµÄ£¬ÏÔÈ»²»ºÏÊÊ
//typedef signed long int TSint64;
//typedef unsigned long int TUint64;
//ANSI CÖй涨long long²ÅÄܱíʾ64λ
//²Î¼û£ºhttp://msdn.microsoft.com/en-us/library/s3f49ktz.aspx
//¿ÉϧVC++ 6.0 ²»ÈÏʶ long long,»á±¨error C2632: 'long' followed by 'long' is illegal
typedef signed long long TSint64;//It's illegal in C90. It's legel in C99.
typedef unsigned long long TUint64;
//typedef LONGLONG TSint64;//VC²»ÈÏ
//typedef ULONGLONG TUint64;
zz from http://www.byvoid.com/blog/c-int64/
ÔÚC/C++ÖУ¬64ΪÕûÐÍÒ»Ö±ÊÇÒ»ÖÖûÓÐÈ·¶¨¹æ·¶µÄÊý¾ÝÀàÐÍ¡£ÏÖ½ñÖ÷Á÷µÄ±àÒëÆ÷ÖУ¬¶Ô64ΪÕûÐ͵ÄÖ§³ÖÒ²ÊDZê×¼²»Ò»£¬ÐÎ̬¸÷Òì¡£Ò»°ãÀ´Ëµ£¬64λÕûÐ͵͍Ò巽ʽÓÐlong longºÍ__int64Á½ÖÖ(VC»¹Ö§³Ö_int64)£¬¶øÊä³öµ½±ê×¼Êä³ö·½Ê½ÓÐprintf(“%lld”,a)£¬printf(“%I64d”,a)£¬ºÍcout << aÈýÖÖ·½Ê½¡£
±¾ÎÄÌÖÂÛµÄÊÇÎåÖÖ³£ÓõÄC/C++±àÒëÆ÷¶Ô64λÕûÐ͵ÄÖ§³Ö£¬ÕâÎåÖÖ±àÒëÆ÷·Ö±ðÊÇgcc(mingw32)£¬g++(mingw32)£¬gcc(linux i386)£¬g++(linux i386)£¬Microsoft Visual C++ 6.0¡£¿ÉϧµÄÊÇ£¬Ã»ÓÐÒ»ÖÖ¶¨ÒåºÍÊä³ö·½Ê½×éºÏ£¬Í¬Ê±¼æÈÝÕâÎåÖÖ±àÒëÆ÷¡£Îª³¹µ×ŪÇ岻ͬ±àÒëÆ÷¶Ô64λÕûÐÍ£¬ÎÒдÁ˳ÌÐò¶ÔËüÃǽøÐÐÁËÆÀ²â£¬½á¹ûÈçÏÂ±í¡£
±äÁ¿¶¨ÒåÊä³ö·½Ê½gcc(mingw32)g++(mingw32)gcc(linux i386)g++(linux i386)MicrosoftVisual C++ 6.0
long long
“%lld”
´íÎó
´íÎó
ÕýÈ·
ÕýÈ·
ÎÞ·¨±àÒë
long long
“%I64d”
ÕýÈ·
ÕýÈ·
´íÎó
´íÎó
ÎÞ·¨±àÒë
__int64
“lld”
´íÎó
´íÎó
ÎÞ·¨±àÒë
ÎÞ·¨±àÒë
´íÎó
__int64
“%I64d”
ÕýÈ·
ÕýÈ·
ÎÞ·¨±à
Ïà¹ØÎĵµ£º
1.ÇóÏÂÃæº¯ÊýµÄ·µ»ØÖµ£¨Î¢Èí£©
int func(x)
{
int countx = 0;
while(x)
{
countx ++;
x = x&(x-1);
......
½ñÌìÓиö¸Õ¸Õ±ÏÒµµÄСÅóÓÑÎÊÎÒ¹ØÓÚvoid*µÄһЩÎÊÌ⣬¸ÕºÃÔÚÍøÉÏÕÒµ½ÁËһƪ±È½ÏÏêϸ˵Ã÷µÄÎÄÕ£¬×ªÔØÖ®......
1.¸ÅÊö
¡¡¡¡
¡¡¡¡Ðí¶à³õѧÕß¶ÔC/C++ÓïÑÔÖеÄvoid¼°voidÖ¸ÕëÀàÐͲ»ÉõÀí½â£¬Òò´ËÔÚʹÓÃÉϳöÏÖÁËһЩ´íÎó¡£±¾ÎĽ«¶Ôvoid¹Ø¼ü×ÖµÄÉî¿Ìº¬Òå½øÐнâ˵£¬²¢ÏêÊövoid¼°voidÖ¸ÕëÀàÐ͵ÄʹÓ÷½·¨Óë¼¼ÇÉ¡£
¡¡¡¡2.voidµÄº¬ ......
2010Äê05ÔÂ1ºÅ |
23:15·ÖÀࣺ¹ÜÀíά»¤
, Õï¶Ï°¸Àý
| ±à¼
| ±êÇ©£º11g
¡¢dbca
¡¢netca
| 13
views
±¾Îijö×Ô “inthirties£¨ÄÐ
ÈËÈýÊ®£©
”²©¿Í£¬×ªÔØÇëÎñ±Ø×¢Ã÷×÷Õߺͱ£Áô³ö´¦¡£
¿Í»§×°ºÃÁËOracle£¬°²×°³É¹¦ÁË£ ......