【问题标题】:Problem with %lld on WindowsWindows 上的 %lld 问题
【发布时间】:2009-03-19 20:54:52
【问题描述】:

为什么会有这段代码:

#include <stdio.h>

int main(int argc, char** argv) {
    printf("%lld\n", 4294967296LL);
}

在 Windows 上发出这个:

0

但这适用于 Linux:

4294967296

【问题讨论】:

    标签: c windows


    【解决方案1】:

    这是因为 Visual Studio C++ 2003 及更早版本不支持 %lld。但是这段代码可以工作:

    #include <stdio.h>
    
    int main(int argc, char** argv) {
        printf("%I64d\n", 4294967296LL);
    }
    

    Size and Distance Specification (Visual Studio C++ 2003)

    Size and Distance Specification (Visual Studio C++ 2005)

    【讨论】:

    • 很高兴知道 2005 年开始支持 %lld。
    猜你喜欢
    • 1970-01-01
    • 2020-02-03
    • 2015-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-16
    相关资源
    最近更新 更多