首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

RAD Studio XE2 C++Builder 支持C99 语法吗?该怎么处理

2013-01-07 
RAD Studio XE2C++Builder 支持C99 语法吗?RAD Studio XE2C++Builder 支持C99 语法吗?[解决办法]C99是标准

RAD Studio XE2 C++Builder 支持C99 语法吗?
RAD Studio XE2   C++Builder 支持C99 语法吗?
[解决办法]
C99是标准ISO/IEC 9899:1999的简称。   c99是在c89的基础上发展起来的,增加了基本数据类型,关键字和一些系统函数等。其实在初学阶段C89(ANSI C)和C99的区别是不易察觉的,所以不必太在意这个。   C99有一部分是对于大字符集的优化(很多资料上写的是ANSI标准化),还加入了一些数据库函数,是C89之后的标准,我们用的C是C89标准的,C++是C89编写的,目前的C99标准其实在以前的编译器中就或多或少的支持了,目前完全支持的有这些:GCC、Borland C++等。
[解决办法]
等 XE3 UP1 , 据说是一个正式支持 C++11 的版本。也是一个支持 64bit的版本。
[解决办法]
编译这个代码试试不就知道了嘛


#include<stdio.h>
int main( )
{
int a;
scanf( "%d" ,&a);
int x[a];
printf( "%d" , sizeof(x));

return 0;
}


忘了从那个版本提取出来的编译器了。

CodeGear C++ 6.10 for Win32 Copyright (c) 1993-2008 CodeGear
Available options (* = default setting, xxx = has sub-options: use -h -X):
(Note: -X- or -w-XXX will usually undo whatever was set or unset by -X)

hello.c:
Error E2140 hello.c 6: Declaration is not allowed here in function main
Error E2313 hello.c 6: Constant expression required in function main
*** 2 errors in Compile ***


官网搜了一下XE3也没提到支持C99的。倒是即将发布的版本明确说明支持C99了。看样子XE3应该是不支持。

[解决办法]
C99 只有 GCC 支持的比较全面
VC2010 也只支持部分

热点排行