You need to enable JavaScript to run this app. 如何在C++中编写带逗号千位分隔符的数字字面量
优惠活动
大模型
产品
解决方案
定价
更多

如何在C++中编写带逗号千位分隔符的数字字面量

C++ 不支持逗号作为数字字面量的千位分隔符

你给出的写法int x = 1,000,000;无法正常编译运行:此处的逗号会被编译器解析为逗号运算符,整个表达式的计算逻辑是依次执行1、000、000三个子表达式,最终将最后一个子表达式的值0赋值给x,和你的预期完全不符。


可用替代方案

  • 如果你使用的是C++14及以上版本的标准,可以用单引号'作为数字字面量的分隔符,写法如下:
    int x = 1'000'000;
    
    该写法符合C++标准要求,编译器会正常识别为数值1000000,且支持整数、浮点数、二进制/八进制/十六进制字面量使用,例如:
    double pi = 3.141'592'653;
    int bin_val = 0b1010'1100'0011;
    
  • 如果你必须使用C++14之前的标准,可以用宏定义做临时兼容,但该方案存在局限性,不推荐生产环境使用:
    #define NUM_SEQ(...) __VA_ARGS__
    int x = NUM_SEQ(1,000,000);
    

内容的提问来源于stack exchange,提问作者user16255957

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.15 12:24:01