zoukankan      html  css  js  c++  java
  • 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;
    注意的是"\"必须是该行的末尾,后面不能有注释或者空格
  • 相关阅读:
    OpenCascade Ray Tracing Rendering
    Create New Commands in Tcl
    OpenCascade Modeling Algorithms Fillets and Chamfers
    OpenCascade Modeling Algorithms Boolean Operations
    Construction of Primitives in Open Cascade
    Open Cascade Data Exchange STL
    Tcl Tk Introduction
    Open Cascade DataExchange IGES
    Netgen mesh library : nglib
    Hello Netgen
  • 原文地址:https://www.cnblogs.com/wangjixianyun/p/2823273.html
Copyright © 2011-2022 走看看