[ת]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ºÍC++ÖеÄÖ÷ÒªÊý¾ÝÀàÐͺÍ×Ö½Ú´óС(
C/C++µÄд·¨ÊDz»¿ÆÑ§ºÍ²»ÑϽ÷µÄ¡£ÒòΪCºÍC++ËäÈ»ÓïÒ壬µ«ÊÇÉè¼ÆË¼ÏëÊǽṹ»¯ÓëÃæÏò¶ÔÏó. C±ê×¼¹æ·¶ÓëC++µÄ±ê×¼¹æ·¶Ò²ÊÇÁ½¸öÎı¾¡£½üÀ´×ÐϸÑо¿ÁËËüÃǵÄÊý¾ÝÀàÐÍ£¬²ÅÖªµÀÆäÀ´ÁúÈ¥Âö£¬ÕæÕý×öµ½ÆäʵËùÒÔÈ»¡£
1¡¢CÓïÑÔ¶¨ÒåÁË5ÖÖ»ù±¾Êý¾ÝÀàÐÍ
char(×Ö·û), int(Õ ......
ÃèÊö ¸ø¶¨Ò»¸öÕûÊýÐòÁУ¬ÅÐ¶ÏÆäÖÐÓжàÉÙ¸öÊý£¬µÈÓÚÊýÁÐÖÐÆäËûÁ½¸öÊýµÄºÍ¡£ ±ÈÈ磬¶ÔÓÚÊýÁÐ1 2 3 4, Õâ¸öÎÊÌâµÄ´ð°¸¾ÍÊÇ2, ÒòΪ3 = 2 + 1, 4 = 1 + 3¡£ ÊäÈë µÚÒ»ÐÐÊÇÒ»¸öÕûÊýT£¬±íʾһ¹²ÓжàÉÙ×éÊý¾Ý¡£ 1<= T <= 100
½ÓÏÂÀ´µÄÿ×éÊý¾Ý¹²Á½ÐУ¬µÚÒ»ÐÐÊÇÊýÁÐÖÐÊýµÄ¸öÊýn ( 1 <= n <= 100)£¬µÚ¶þÐÐÊÇÓÉn¸öÕûÊý×é³ ......
¹æÔò»ò½¨Ò顣ÿÌõ×¼Ôò¶¼ÓÐÀýÍâ
1£¬¼ÙÏëµÄ±àÒë³ÌÐò
ʹÓñàÒë³ÌÐòËùÓеĿÉÑ¡¾¯¸æÉèÊ©
ʹÓÃlintÀ´²é³ö±àÒë³ÌÐò©µôµÄ´íÎó
Èç¹ûÓе¥Ôª²âÊÔ£¬¾Í½øÐе¥Ôª²âÊÔ
2£¬×Ô¼ºÉè¼Æ²¢Ê¹ÓöÏÑÔ
¼ÈҪά»¤³ÌÐòµÄ½»¸¶°æ±¾£¬ÓÖҪά»¤³ÌÐòµÄµ÷ÊÔ°æ±¾
ҪʹÓöÏÑÔ¶Ôº¯Êý²ÎÊý½øÐÐÈ·ÈÏ
Òª´Ó³ÌÐòÖÐɾȥÎÞ¶¨ÒåµÄÌØÐÔ£¬»òÕßÔÚ³ÌÐòÖÐʹÓöÏÑÔÀ´¼ ......
ÒªÈà Eclipse ¿ÉÒÔ¿ª·¢ C/C++ ³Ìʽ£¬Òª¹ÒÉÏ CDT ²Å¿ÉÒÔ¡£
Ê×ÏÈÒªÏÂÔØCDT
CDTµÄ×îа汾ÊÇ 3.1.0£¬ËüÖ§³Öeclipse3.2.0£¬ÆäÏÂÔØµØÖ·£ºhttp://download3.eclipse.org/tools/cdt/releases/callisto/dist/3.1.0/£¬»òÕßÊǵ½http://www.eclipse.org/cdt/downloads.phpÏÂÔØÆäËü° ......
/*
* File: main.cpp
* Author: Vicky
*
* Created on 2010Äê5ÔÂ8ÈÕ, ÏÂÎç2:47
*/
#include <iostream>
using namespace std;
void swap(int x, int y) {
cout << "x and y swap before : " << x << "\t" << y << endl;
int i = x;
x = y;
y = i; ......