参数传递问题

maple604 2008-03-20 12:01:50
我想把m作为参数传给本地数组会报错,应该怎么定义数组呢
void generate_sub_set(int m)
{
bool bl[m];
bool **pb=new bool*[m];
for(int i=0;i<m;i++)
bool[i]=1;

}
...全文
48 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
maple604 2008-03-20
  • 打赏
  • 举报
回复
编程真是难啊,看来就得适应了
bluewanderer 2008-03-20
  • 打赏
  • 举报
回复
不定长数组因为涉及动态栈指针问题所以不被支持... 并不是语法上的限制

所以只要变的就不成。

const int a = 变量;这种写法a不会被作为常量处理,这里的const只作为只读的hint使用。
RookieAC 2008-03-20
  • 打赏
  • 举报
回复
nod
可以定义一个常数,然后把m赋值给这个常数

const int num=m;
bool bl[num];

这样好像行,我没试,但应该可以
bluewanderer 2008-03-20
  • 打赏
  • 举报
回复
bool *bl = new bool[m];

C99其实VS2008都不支持
maple604 2008-03-20
  • 打赏
  • 举报
回复
对啊我用的就是VC6.0,应该怎么解决呢,怎么也得智能点啊
yeing2008 2008-03-20
  • 打赏
  • 举报
回复
很艺术,那vc6一定不行了,它是98年开发的。
bluewanderer 2008-03-20
  • 打赏
  • 举报
回复
这种语法到C99才开始支持。此前声明数组时长度只能是常数。

64,642

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧