C/C++:sizeof('a')的值为什么不一样?
来源:互联网 发布:牛牛机器人软件 编辑:程序博客网 时间:2024/05/14 18:20
C/C++:sizeof('a')的值为什么不一样?
C语言:
char a = 'a';
sizeof(char) = 1
sizeof(a) = 1
sizeof('a') = 4
C++语言:
char a = 'a';
sizeof(char) = 1
sizeof(a) = 1
sizeof('a') = 1
字符型变量是1字节这个没错,奇怪就奇怪在C语言认为'a'是4字节,而C++语言认为'a'是1字节。
原因如下:
C99标准的规定,'a'叫做整型字符常量(integer character constant),被看成是int型,所以在32位机器上占4字节。
ISO C++标准规定,'a'叫做字符字面量(character literal),被看成是char型,所以占1字节。
http://www.cnblogs.com/dolphin0520/archive/2011/04/04/2005089.html
今天腾讯笔试遇到的一道题。
- C/C++:sizeof('a')的值为什么不一样?
- C/C++:sizeof('a')的值为什么不一样?
- C/C++:sizeof('a')的值为什么不一样?
- C/C++:sizeof('a')的值为什么不一样?
- sizeof('a')的值为什么不一样?
- 编写一个C程序输入a,b,c三个值,输出其中的最大者 输入123顺序不一样结果不一样这是为什么??
- 不一样的C语言-当sizeof遇上数组名
- 【c++】sizeof(a struct)
- C/C++的sizeof('a')和sizeof(char)
- 为什么Java不需要sizeof()(和C/C++的比较)
- Objective C 不一样的语法
- 1 不一样的 C 基础
- 不一样的C语言-变量
- C的题-sizeof
- c的sizeof
- 不一样的随机数生成方法(C/C++)
- sizeof详解 - 很好的sizeof资料 C
- sizeof详解 - 很好的sizeof资料 C
- google/baidu分析
- ORACLE函数大全
- 用Netbeans编写PHP
- HGE图片编辑器texasm.exe
- Mesh文件解析
- C/C++:sizeof('a')的值为什么不一样?
- 静态压缩
- 缺陷管理平台Mantis配置步骤
- 面向对象设计之二 类的领域、依赖度与内聚类型
- 程序员面试、算法研究、编程艺术、红黑树4大系列集锦与总结
- linux下C语言多线程编程实例
- 1111111111111111
- 软考学习目录
- 如何在VirtualBox中安装Ubuntu