标题:程序中.c与.cpp的区别问题
只看楼主
vfdff
Rank: 6Rank: 6
等 级:侠之大者
威 望:8
帖 子:2172
专家分:425
注 册:2005-7-15
得分:0 
回复:(hago)回复:(nuciewth)int a[n];这个都可以...
你有c-free 4.0的注册号??

~~~~~~~~~~~~~~~好好学习~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2007-11-18 14:03
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
得分:0 

论坛里有注册机.


倚天照海花无数,流水高山心自知。
2007-11-18 14:17
cosdos
Rank: 9Rank: 9Rank: 9
来 自:ShangHai
等 级:蜘蛛侠
威 望:6
帖 子:2109
专家分:1385
注 册:2007-6-19
得分:0 
以下是引用vfdff在2007-11-18 13:48:51的发言:
int n,m,t;
scanf("%d",&n);
int a[n];
这种写法C不支持,也就是C中变量的定义必须全部放在赋值前


这是 C99 的变长数组。

变长数组在程序运行时分配空间,分配好空间后就不能改变了。
传统数组是在编译时已经决定的。

int n, m, t;
scanf("%d", &n);
int a[n]; // 用输入的n的值为数组分配空间,分配好后就不能改变了。

// 但还是没有 malloc() 灵活,因为 变长数组不能释放
// 变长数组是 C99 中才出现的。



—>〉Sun〈<—
2007-11-18 14:52
gaoxing123
Rank: 2
等 级:论坛游民
帖 子:6
专家分:14
注 册:2013-10-12
得分:0 
回复 2楼 nuciewth
瞎说,怎么可能一样。.c是c语言源程序,.cpp是c++源程序。.c源程序中所有局部变量必须放在函数体前面定义好 ,而cpp没有这样的要求。
2013-11-12 20:27



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-186913-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.257209 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved