[ת]C/C++µÄ64λÕûÐÍ
Technorati ±êÇ©: C++ ÔÎĵØÖ·£º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¡± ÕýÈ· ÕýÈ· ÎÞ·¨±àÒë ÎÞ·¨±àÒë ÕýÈ· long long cout ·ÇC++ ÕýÈ· ·ÇC++ ÕýÈ· ÎÞ·¨±àÒë __int64 cout ·ÇC++ ÕýÈ· ·ÇC++ ÎÞ·¨±àÒë ÎÞ·¨±àÒë long long printint64() ÕýÈ· ÕýÈ· ÕýÈ· ÕýÈ· ÎÞ·¨±àÒë
ÉϱíÖУ¬ÕýÈ·Ö¸±àÒëͨ¹ý£¬ÔËÐÐÍêÈ«ÕýÈ·£»´íÎóÖ¸±àÒëËäȻͨ¹ý£¬µ«ÔËÐнá¹ûÓÐÎó£»ÎÞ·¨±àÒëÖ¸±àÒëÆ÷¸ù±¾²»ÄܱàÒëÍê³É¡£¹Û²ìÉÏ±í£¬ÎÒÃÇ¿ÉÒÔ·¢ÏÖÒÔϼ¸µã£º long long¶¨Ò巽ʽ¿ÉÒÔÓÃÓÚgcc/g++£¬²»ÊÜÆ½Ì¨ÏÞÖÆ£¬µ«²»ÄÜÓÃÓÚVC6.0¡£ __int64ÊÇWin32ƽ̨±àÒëÆ÷64볤ÕûÐ͵͍Ò巽ʽ£¬²»ÄÜÓÃÓÚLinux¡£ ¡°%lld¡±ÓÃÓÚLinux i386ƽ̨±àÒëÆ÷£¬¡±%I64d¡±ÓÃÓÚWin32ƽ̨±àÒëÆ÷¡£ coutÖ»ÄÜÓÃÓÚC++±àÒ룬ÔÚVC6.0ÖУ¬cout²»Ö§³Ö64볤ÕûÐÍ¡£ ±íÖÐ×îºóÒ»ÐÐÊä³ö·½Ê½ÖеÄprinti
Ïà¹ØÎĵµ£º
/*
**ÅжÏC?ÐÐ??¾³µÄ³ÌÐò
*/
/*
**¾²?³õʼ»¯
*/
int static_variable=5;
void
f()
{
register int i1, i2, i3, i4, i5, i6, i7, i8, i9, i10;
register char *c1, *c2, *c3, *c4, *c5, *c6, *c7 , *c8, *c9, *c10;
extern int a_very_long_name_to_sec_how_long_they_can_be;
double ......
http://uncrustify.sourceforge.net/
Ident code, aligning on parens, assignments, etc
Align on '=' and variable definitions
Align structure initializers
Align #define stuff
Align backslash-newline stuff
Reformat comments (a little bit)
Fix inter-character spacing
Add or remove parens on return ......
/*
* File: main.cpp
* Author: Vicky
*
* Created on 2010Äê5ÔÂ8ÈÕ, ÏÂÎç2:47
*/
#include <iostream>
using namespace std;
class A{
public:
A(){
cout << "Ö´Ðй¹Ô캯Êý´´½¨Ò»¸ö¶ÔÏó" << endl;
}
A(A&){
cout << "Ö´Ðп½±´º¯Êý¿½±´Ò»¸ö¶ ......