c++ - 为什么以下代码在 C 、 C++ 中给出不同的输出?

标签 c++ c

以下代码给出的输出为 C 中的 1, 4, 4 而 C++ 中的 1, 1, 4

#include<stdio.h> 
int main() 
{  
    char ch = 'A'; //initialise 
    //printing output
    printf("%d, %d, %d", sizeof(ch), sizeof('A'), sizeof(3.14f));    
    return 0; 
} 

最佳答案

因为字 rune 字在 C 中是 int 类型,但在 C++ 中是 char 类型。

关于c++ - 为什么以下代码在 C 、 C++ 中给出不同的输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25306946/

相关文章:

开源项目中的 C++ 类设计模式

c++ - QGraphicsView 和 QGraphicsItem 同时捕获的鼠标事件如何处理?

c++ - 使用内联 ASM 进行非常规调用

c - 使用已排序的链表进行顺序搜索

objective-c - 二维数组的 C 内存管理

c++ - OpenCV c++ hwnd2mat(截图)-> blobFromImage : Error

c++ - 本地对象可以完全存在于 C++ 中的硬件寄存器中吗?

c++ - protected 方法在c++中继承时可以成为私有(private)方法吗?

c - 从 C 中的命令行输入获取文件大小

从 R 调用 MPI 以运行 C 代码