社区
C++ Builder
帖子详情
请问bc中关于__BORLANDC__的宏定义,在哪里可以找到?
ryrx
2005-04-13 11:04:22
如题,谢谢。
...全文
132
5
打赏
收藏
请问bc中关于__BORLANDC__的宏定义,在哪里可以找到?
如题,谢谢。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
崔作非
2005-04-14
打赏
举报
回复
再简单说一下,BCC32存在不同版本的情况和JDK存在多版本的道理差不多,同一台机器上可以拥有多少JDK,而你在同一时刻只能使用同一版本的编译器来工作。
这个宏还有一个意义,因为C++并没有固定的编译器/编译器编写规范,所以不同的C++编译器经常使用不同的方法来实现同样的功能,比如说内存管理。如果你一个C++ FrameWork的设计者,那么你就得考虑到不同的编译环境,因此说,在C++ FrameWork中经常能找到判断当前编译器是什么的语句,如
#ifdef __BORLANDC__,如果为真,说明__BORLANDC__有定义,也就说明当前的编译器是borland C++编译器了,那么下面就可以编译与Borland 编译器有关的代码了。
NetSpider9804040
2005-04-14
打赏
举报
回复
学习学习,同时顶顶先!
ryrx
2005-04-13
打赏
举报
回复
请问为什么编译器版本号就不能是固定值?
崔作非
2005-04-13
打赏
举报
回复
我觉得这个宏不是定义出来的,是被做进BCC32.exe中的。因为这个宏的意思是返回borland编译器的版本号,假设,它在头文件中有定义,所有的宏常量都是定义时就给出值的,那么它就不能返回正确的编译器版本号了,由此反证得出,它是没有定义的。
崔作非
2005-04-13
打赏
举报
回复
因为编译器可以有多个呀,不同版本的BCC32的版本是不一样的,一般来说,绝大多数的C++代码能够在5.5以上的编译器通过。
如你你装有BCB 6 Update 4的话你的编译器版本还会更高的,好像是5.6.4。
Borland Win32下的所有C++编译器都是出自一家的。如现在的BCB和CBX是共用一个。
这个宏的意义在于让一些使用新的C++/VCL特性的C代码,能够在老的编译器下通过或者是报错不能编译,防止不正确的运行程序代码。
EditPlus 2整理信箱的工具
③ 各种类似"$(FilePath)"的参数可以在文本框右侧的箭头下拉菜单
中
获取,具体含义如下 参数 描述 $(FilePath) 文件路径(文件全名,含目录和文件名) $(FileDir) 文件目录(不带文件名) $(FileName) 文件名(不带...
Editplus 3[1].0
③ 各种类似"$(FilePath)"的参数可以在文本框右侧的箭头下拉菜单
中
获取,具体含义如下 参数 描述 $(FilePath) 文件路径(文件全名,含目录和文件名) $(FileDir) 文件目录(不带文件名) $(FileName) 文件名(不带...
editplus 代码编辑器html c++ jsp css
具体解决方法,在 Editplus
中
使用正则表达式,由于“(”、“)”被用做预设表达式(或者可以称作子表达式)的标志,所以查找 “ \n” 时会提示查找不到,所以也就无法进行替换了,这时可以把“(”、“)”使用任意...
代码语法错误分析工具pclint8.0
选项还可以放在
宏定义
中
,例如: #define DIVZERO(x) /*lint -save -e54 */ ((x) /o) /*lint -restore */ LINT的选项很多共有300多种,大体可分为以下几类: 1)错误信息禁止选项 该类选项是用于禁止生成某...
富士通16位单片机C语言手册提高篇
中
文版
有掌握这一技术可以参考市面上的一些书目还可以在原来的一 些Dos 下的一些C 开发环境下进行练习如
Bor
lan
d 公司的Dos 下 的TC 或者
BC
编译器 手册
中
的例子都经过验证相应的编译器的版本是V30L02 汇编器的版本是V30L04...
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章