C/C+中的每一个常亮(every literal)都是有类型的,例如10 就是int型的,因此siziof(10)和sizeof(int)是相同的,但是字符型常亮(‘a’)在C和C++中有不同的变量类型。

在C中,‘a’被认为是int形,在C++中,‘a’被认为是char型。

int main()
{printf("sizeof('V') = %d sizeof(char) = %d", sizeof('V'), sizeof(char));return 0;
}

结果:

C result – sizeof(‘V’) = 4 sizeof(char) = 1

C++ result – sizeof(‘V’) = 1 sizeof(char) = 1

上述行为也可以体现C++的函数重载

void foo(char c)
{printf("From foo: char");
}
void foo(int i)
{printf("From foo: int");
}int main()
{foo('V');return 0;
}

则调用void foo(char c)

3) Types of boolean results are different in C and C++.

// output = 4 in C (which is size of int)
printf("%d", sizeof(1==1)); // output = 1 in c++ (which is the size of boolean datatype)
cout << sizeof(1==1); 

[C/CPP系列知识] Type difference of character literals 和 bool in C and C++相关推荐

  1. Type difference of character literals in C and C++

    Every literal (constant) in C/C++ will have a type information associated with it. In both C and C++ ...

  2. c语言编译成功,[C/CPP系列知识] 那些程序C语言可以编译通过但C++无法编译成功 Write a C program that won’t compile in C++...

    下面的程序可以用gcc编译,但g++无法编译. #include intmain() { foo();//foo() is called before its declaration/definiti ...

  3. [C/CPP系列知识] C++中extern “C” name mangling -- Name Mangling and extern “C” in C++

    http://www.geeksforgeeks.org/extern-c-in-c/ C++函数重载(function overloading),但是C++编译器是如何区分不同的函数的呢?----是 ...

  4. ML:MLOps系列讲解之系列知识解读全貌

    ML:MLOps系列讲解之系列知识解读全貌 导读:您将了解如何使用机器学习,了解需要管理的各种变更场景,以及基于ml的软件开发的迭代性质.最后,我们提供了MLOps的定义,并展示了MLOps的发展. ...

  5. linux设置共享权限设置命令,Linux系列知识详解(三)--------- Linux链接命令和权限管理命令...

    Linux系列知识详解(三)--------- Linux链接命令和权限管理命令 一:链接命令ln 简介:什么是链接命令?链接命令分为软链接和硬链接.其中软链接产生的新文件是以路径的形式表示原文件,类 ...

  6. STM32F103移植FreeRTOS必须搞明白的系列知识---1(Cortex-CM3中断优先级)

    STM32F103移植FreeRTOS必须搞明白的系列知识---1(Cortex-CM3中断优先级) STM32F103移植FreeRTOS必须搞明白的系列知识---2(FreeRTOS任务优先级) ...

  7. Spring/Boot/Cloud系列知识(2)— — 代理模式

    本文转自:https://blog.csdn.net/yinwenjie/article/details/77848285 代理模式是23种设计模式中的一种,属于一种结构模式.用一句大白话解释这个设计 ...

  8. ML:MLOps系列讲解之系列知识解读之完整总结系列内容(第一章~第九章)

    ML:MLOps系列讲解之系列知识解读之完整总结系列内容(第一章~第九章) 导读:您将了解如何使用机器学习,了解需要管理的各种变更场景,以及基于ml的软件开发的迭代性质.最后,我们提供了MLOps的定 ...

  9. Spring/Boot/Cloud系列知识:SpringMVC进行HTTP信息接收和发送的过程(1)

    1.整体调用过程 本文承接本专题上一篇文章<Spring/Boot/Cloud系列知识:HttpMessageConverter转换器使用方式>,在上一篇文章中讲解了HttpMessage ...

最新文章

  1. Go服务迁到K8s后老抽风重启? 记一次完整的线上问题解决过程
  2. oracle中 rownum与rowid的理
  3. mysql查找表shoe table,mysql命令行常用命令
  4. 操作系统课设之Linux 进程管理
  5. 2-5:C++快速入门之引用,引用和指针的区别
  6. 方法~作用于对象~失败_消息三:ActiveMQ Topic 消息失败重发
  7. java加vue实例_Vue.Js及Java实现文件分片上传代码实例
  8. 黄金分割圆怎么画matlab,黄金分割线画法图解(操作技巧)
  9. Linux下不同颜色文件的类型
  10. 电厂供配电模拟实训系统QY-GPD03
  11. 分享详细剪辑步骤,做自媒体一个月7852,全程复制粘贴即可
  12. 警告:integer division in floating-point context
  13. 正整数分解使得乘积最大问题
  14. Google Drive 转存别人分享的文件到自己的网盘
  15. Ae 效果快速参考:杂色和颗粒
  16. 2016年开源巨献:百度71款开源项目
  17. 深入理解javascript--javascript与DOM【1】mxx
  18. CNN Matlab例子RGB_MATLAB如何提取曲线原始数据
  19. MongoDB 运行 service mongod start 后服务没有启动成功
  20. three.js基础几何体:立方体,球,圆柱的绘制

热门文章

  1. Windows 2008 VS2008 IIS7 中调试Asp.net 2.0 两个问题
  2. 个人站点提高访问量七大方案
  3. 【开发环境】Ubuntu 中使用 VSCode 开发 C/C++ ③ ( 创建工程目录 | 添加 C++ 源代码 | 代码自动提示 )
  4. 【Java 虚拟机原理】Java 类中的类加载初始化细节 ( 只使用类中的常量时加载类不会执行到 ‘初始化‘ 阶段 )
  5. 【Flutter】ListView 列表高级功能 ( ScrollController 上拉加载更多 )
  6. 【Android 事件分发】事件分发源码分析 ( 驱动层通过中断传递事件 | WindowManagerService 向 View 层传递事件 )
  7. 【字符串】最长回文子串 ( 蛮力算法 )
  8. Linux服务源码安装后开机自启动04-php-fpm
  9. [Spring cloud 一步步实现广告系统] 22. 广告系统回顾总结
  10. 【干货】SqlServer 总结几种存储过程分页的使用