由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - GCC 居然允许变量长度的向量
相关主题
G++用-g和-O3编译运行结果竟然不一样ms cl.exe 的选项
Do the two statements cost the same amount of time?C语言里面的register变量能否进行取地址操作? (转载)
C/C++ __int64和long long, cross platform问题问一个defining array 的问题
怎么得到char *分配空间的大小?一个C++ 的问题
Help needed on coding for Fibonacci series[合集] 大拿们,问一个redhat linux下C编程 make error 139的问
gcc 优化不优化运算结果不一样?gcc 的 bug?问一个C++下的Bug(Linux下)
问一个volatile和memcpy一起用的问题 请问c++为什么会编译失败?
unsigned long longSTL/vector引用成员变量。
相关话题的讨论汇总
话题: int话题: gcc话题: vc话题: c99话题: extension
进入Programming版参与讨论
1 (共1页)
q*****g
发帖数: 1568
1
【 以下文字转载自 Linux 讨论区 】
发信人: qiuxing (球星), 信区: Linux
标 题: GCC 居然允许变量长度的向量
发信站: BBS 未名空间站 (Tue Nov 1 00:47:05 2005), 转信
这个程序本来是一个标准的错误程序,我的gcc居然连个报错都不给,顺利
编译,顺利运行。结果就是拿到Windows上用VC就编译通不过,我于是就被人
嘲笑了一把(^_^):
#include
int main ()
{
int n = 5;
int a[n];
int i;
for (i = 0; i < 5; i++)
{
a[i] = 2 * i;
printf("%d\n", a[i]);
}
return 0;
}
l********k
发帖数: 17
2
this one is ok ba?

【在 q*****g 的大作中提到】
: 【 以下文字转载自 Linux 讨论区 】
: 发信人: qiuxing (球星), 信区: Linux
: 标 题: GCC 居然允许变量长度的向量
: 发信站: BBS 未名空间站 (Tue Nov 1 00:47:05 2005), 转信
: 这个程序本来是一个标准的错误程序,我的gcc居然连个报错都不给,顺利
: 编译,顺利运行。结果就是拿到Windows上用VC就编译通不过,我于是就被人
: 嘲笑了一把(^_^):
: #include
: int main ()
: {

t*q
发帖数: 104
3
gcc extension

【在 q*****g 的大作中提到】
: 【 以下文字转载自 Linux 讨论区 】
: 发信人: qiuxing (球星), 信区: Linux
: 标 题: GCC 居然允许变量长度的向量
: 发信站: BBS 未名空间站 (Tue Nov 1 00:47:05 2005), 转信
: 这个程序本来是一个标准的错误程序,我的gcc居然连个报错都不给,顺利
: 编译,顺利运行。结果就是拿到Windows上用VC就编译通不过,我于是就被人
: 嘲笑了一把(^_^):
: #include
: int main ()
: {

q*****g
发帖数: 1568
4
其实应该说是C99 extension,呵呵。

【在 t*q 的大作中提到】
: gcc extension
q*****g
发帖数: 1568
5
不过话说回来,这个extension属于搞计算的人非常非常有用的一个extension啊。
回头有时间再去看看VC是不是有什么option可以接受这样的extension。

【在 q*****g 的大作中提到】
: 其实应该说是C99 extension,呵呵。
b**********r
发帖数: 22
6
thanks a lot. never knew this :)

【在 q*****g 的大作中提到】
: 不过话说回来,这个extension属于搞计算的人非常非常有用的一个extension啊。
: 回头有时间再去看看VC是不是有什么option可以接受这样的extension。

n******t
发帖数: 4406
7
这个是C99 ex?????????????
我觉得不太可能啊.

【在 q*****g 的大作中提到】
: 其实应该说是C99 extension,呵呵。
n******t
发帖数: 4406
8
搞计算要这个extension干什么?

【在 q*****g 的大作中提到】
: 不过话说回来,这个extension属于搞计算的人非常非常有用的一个extension啊。
: 回头有时间再去看看VC是不是有什么option可以接受这样的extension。

e******e
发帖数: 86
9
好像c++事可以得。
标准得c事不星得。
try to use vector.
in fact I find vector is really good
and the overhead is very very small.

【在 q*****g 的大作中提到】
: 【 以下文字转载自 Linux 讨论区 】
: 发信人: qiuxing (球星), 信区: Linux
: 标 题: GCC 居然允许变量长度的向量
: 发信站: BBS 未名空间站 (Tue Nov 1 00:47:05 2005), 转信
: 这个程序本来是一个标准的错误程序,我的gcc居然连个报错都不给,顺利
: 编译,顺利运行。结果就是拿到Windows上用VC就编译通不过,我于是就被人
: 嘲笑了一把(^_^):
: #include
: int main ()
: {

s*****c
发帖数: 753
10
I guess it is either interpreted this way
int a[n]; -> int *a = new int[n];
or const int n=5; int a[n].
I am wondering if you can do sth like this:
int n;
scanf("%d", &n);
int a[n];

【在 q*****g 的大作中提到】
: 不过话说回来,这个extension属于搞计算的人非常非常有用的一个extension啊。
: 回头有时间再去看看VC是不是有什么option可以接受这样的extension。

相关主题
gcc 优化不优化运算结果不一样?gcc 的 bug?ms cl.exe 的选项
问一个volatile和memcpy一起用的问题C语言里面的register变量能否进行取地址操作? (转载)
unsigned long long问一个defining array 的问题
进入Programming版参与讨论
b**********r
发帖数: 22
11
试一下不就知道了。
一点问题都没有。

【在 s*****c 的大作中提到】
: I guess it is either interpreted this way
: int a[n]; -> int *a = new int[n];
: or const int n=5; int a[n].
: I am wondering if you can do sth like this:
: int n;
: scanf("%d", &n);
: int a[n];

p***o
发帖数: 1252
12
no, it's something like _alloca

【在 s*****c 的大作中提到】
: I guess it is either interpreted this way
: int a[n]; -> int *a = new int[n];
: or const int n=5; int a[n].
: I am wondering if you can do sth like this:
: int n;
: scanf("%d", &n);
: int a[n];

q*****g
发帖数: 1568
13
其实主要是方便。比如说我可以写一个函数读进去一个array算一个数,我就
不需要事先知道这个array有多长。

【在 n******t 的大作中提到】
: 搞计算要这个extension干什么?
q*****g
发帖数: 1568
14

我后来就这么改了。VC才通过编译。
这个我怀疑标准C都不行。
gcc肯定可以。

【在 s*****c 的大作中提到】
: I guess it is either interpreted this way
: int a[n]; -> int *a = new int[n];
: or const int n=5; int a[n].
: I am wondering if you can do sth like this:
: int n;
: scanf("%d", &n);
: int a[n];

c****e
发帖数: 1453
15
还是不要用complier dependent 的代码,呵呵.-Wall也不报告warning吗?

【在 q*****g 的大作中提到】
: 其实主要是方便。比如说我可以写一个函数读进去一个array算一个数,我就
: 不需要事先知道这个array有多长。

q***e
发帖数: 90
16
That's standard C99 extension, conslt ISO9899:1999. So
you should not worry about it: C 99 aloows things like that:
void func(int n) {
int a[n];
....
}
If you compiler failed to support it, just dump your compiler, hehe

【在 c****e 的大作中提到】
: 还是不要用complier dependent 的代码,呵呵.-Wall也不报告warning吗?
d***q
发帖数: 1119
17
in c
const int xx
only means this variable is unmutable
but not a constant

【在 q*****g 的大作中提到】
:
: 我后来就这么改了。VC才通过编译。
: 这个我怀疑标准C都不行。
: gcc肯定可以。

c****e
发帖数: 1453
18
thanks for your reminder, but a lot of people can't dump vc.

【在 q***e 的大作中提到】
: That's standard C99 extension, conslt ISO9899:1999. So
: you should not worry about it: C 99 aloows things like that:
: void func(int n) {
: int a[n];
: ....
: }
: If you compiler failed to support it, just dump your compiler, hehe

1 (共1页)
进入Programming版参与讨论
相关主题
STL/vector引用成员变量。Help needed on coding for Fibonacci series
C++编程问题:union inside structgcc 优化不优化运算结果不一样?gcc 的 bug?
gcc 编译的时候要包括 header source file 吗?问一个volatile和memcpy一起用的问题
[合集] 这段C++程序哪种写法是正确的unsigned long long
G++用-g和-O3编译运行结果竟然不一样ms cl.exe 的选项
Do the two statements cost the same amount of time?C语言里面的register变量能否进行取地址操作? (转载)
C/C++ __int64和long long, cross platform问题问一个defining array 的问题
怎么得到char *分配空间的大小?一个C++ 的问题
相关话题的讨论汇总
话题: int话题: gcc话题: vc话题: c99话题: extension