• C++基本数据类型字面值


    只有内置类型存在字面值,没有类(class)类型字面值.
    例如:0是int类型的字面值,3.14159是double类型的字面值.
     
    整型浮点字面值
     
    20                      // decimal   十进制
    024                   //  octal     八进制
    0X14                //   hexadecimal     十六进制
    128u ,128U      //    unsigned
    1024UL           //    unsigned long
    1L                 //      long  长整形
    8Lu              //      unsigned long
    3.14159F = 3.14159E0F     // float  ,科学计数
    .001f  = 1E-3F                 // float,科学计数
    12.345L = 1.2345E1L      // long double  扩展精度 ,科学计数
    0.  = 0e0                      // double ,科学计数
    'a'                               // char     字符
    L'a'                             // wchar_t   宽字符
    //没有short的字面常量
     
     
    字符串字面值
     
    字符串字面值是一串常量字符,字符串字面值常量由双引号括起来,字符字面值常量用单引号括起来.
     
    为了兼容C语言,C++中的字符串字面值将由编译器自动在末尾添加一个空字符串.
    'A'  :     表示单个字符A
    "A" :     表示字符A和空字符两个字符的字符串
    同理 也存在 宽字符串
    L"a wide string literal"  : 一串宽字符+宽空字符
     
    字符串字面值连接
    不同类型的字符串不能连接: 字符串字面值 和 宽 字符串字面值 不能连接
    std::cout << "a multi-line "
                        "string literal "
                        "using concatenation"
                        << std::endl;
    可以正确执行 : a multi-line string literal using concatenation
    但是
    std::cout << "multi-line " 
                        L"literal" <<std::endl;
    将编译错误.
    另外多行字面值还有一种写法:
    std::cout << "a multi-line \
    string literal \
    using concatenation" << std::endl;
    注意的是"\"必须是该行的末尾,后面不能有注释或者空格
  • 相关阅读:
    Linux tcpdump命令详解
    移动开发网站收集
    Struts+2权威指南基于WebWork核心的MVC开发源码下载
    Eclipse+php插件+Xdebug搭建PHP完美开发/调试环境指南
    java相对目录和绝对目录解析
    python学习网站搜集
    window下开发iphone程序环境搭建iphone tool chain
    Windows下编译objectiveC
    java class路径获取
    完全优化MySQL数据库性能的八个方法
  • 原文地址:https://www.cnblogs.com/wangjixianyun/p/2823273.html
Copyright © 2020-2023  润新知