zoukankan      html  css  js  c++  java
  • 关于单引号,

    看《c陷阱与缺陷》,1.5节,有介绍单引号的。想看看在c++中的情况,在网上搜了下,做了测试。

    环境:win7,vs2013.

    大致说的是,单引号括起来的是给整数的等价。整型数一般是32位(应该是和程序所选的编译选项有关,32位程序,64位程序?)。

    测试的结果是单引号内括的要是超过四个字节则报错。另一方面,在接收的变量类型上,如果接收的不够后面字符常量的字节,不同编译器处理方式不同,有的是忽略后面的,而vc这个则明显是后面的依次覆盖前面的。测试代码如下:

    int a1 = '1';//1
    int a2 = '1';//256
    int a3 = '1';//65536
    int a4 = '1';//16777216

    int b1 = 'abcd';//1633837924:0x61626364
    int b2 = '\\t';//7625820:0x745C5C

    short c1 = 'ab';//24930:0x6162
    short c2 = 'abc';//25187:0x6263,bc的ascii值
    short c3 = 'abcd';//25187:0x6364,cd的ascii值
    //short e1 = 'abcde';//error C2015: 常量中的字符太多//HACK 这个常量是给什么概念?

    char cd1 = 'abcd';//'d'
    putchar(b1);//'d'

    double d1 = 'abcd';//1633837924.0000000
    //double d2 = 'abcde';//error C2015: 常量中的字符太多

  • 相关阅读:
    获取设备信息
    获取Mac地址
    常用正则
    几个字段相同的纪录去重留下主键最小的一条纪录
    mysql查询数据库中包含某字段(列名)的所有表
    nginx反向代理
    Eureka参数配置项详解
    html5验证自适应
    synchronized对象解析
    多线程进行数据同步
  • 原文地址:https://www.cnblogs.com/xiarl/p/3419076.html
Copyright © 2011-2022 走看看