C与C++的三种区分方式

1、单个字符的sizeof大小

在C和C++中,单个字符(char类型)的大小通常是1字节(8位),但这取决于编译器和目标平台。这是一种特别的区分方式,特别定义的。

2、是否有__cplusplus

__cplusplus是一个预定义的宏,它在C++编译器中定义为某个特定的值,而在C编译器中则不被定义。这个宏通常用于在C++代码中条件性地包含C++特有的代码,或者在C和C++混合编程时,区分哪些代码是C++特有的。

3、无数据成员的结构体

在C和C++中,空结构体(即没有成员变量的结构体)的大小通常不是一样的。

C++中有其他内置的东西

相关推荐
阿猿收手吧!18 小时前
【C++】深入理解C++ Atomic内存序:解决什么问题?怎么用?
开发语言·c++
小白学大数据18 小时前
Python爬虫实现无限滚动页面的自动点击与内容抓取
开发语言·爬虫·python·pandas
Andy Dennis18 小时前
一文漫谈设计模式之创建型模式(一)
java·开发语言·设计模式
小黄人软件18 小时前
【MFC】底层类显示消息到多个界面上。 MFC + 线程 + 回调 的标准模板 C++函数指针
c++·mfc
兩尛18 小时前
c++遍历容器(vector、list、set、map
开发语言·c++
£漫步 云端彡18 小时前
Golang学习历程【第十三篇 并发入门:goroutine + channel 基础】
开发语言·学习·golang
2301_7903009618 小时前
C++与Docker集成开发
开发语言·c++·算法
AutumnorLiuu18 小时前
C++并发编程学习(二)—— 线程所有权和管控
java·c++·学习
Demon_Hao18 小时前
JAVA缓存的使用RedisCache、LocalCache、复合缓存
java·开发语言·缓存
踏雪羽翼18 小时前
android 解决混淆导致AGPBI: {“kind“:“error“,“text“:“Type a.a is defined multiple times
android·java·开发语言·混淆·混淆打包出现a.a