int main()
{
const int size = 10; //const 量
int size2 = 10;
int iarray [size]; // ok,编译时能确定元素个数
int iarray2 [size2]; // error,编译时不能确定
iarray;
iarray2;
return 0;
}
请教:
1. 请概括性地说明什么是编译时相关的(能确定的),譬如上述编译时就能确
定表达式的值一样, 2. 请概括性地说明什么是编译时不相关的(不能确定的),而是直到运行时才
能确定的,譬如上述编译时不能确定表达式的值一样,
{
const int size = 10; //const 量
int size2 = 10;
int iarray [size]; // ok,编译时能确定元素个数
int iarray2 [size2]; // error,编译时不能确定
iarray;
iarray2;
return 0;
}
请教:
1. 请概括性地说明什么是编译时相关的(能确定的),譬如上述编译时就能确
定表达式的值一样, 2. 请概括性地说明什么是编译时不相关的(不能确定的),而是直到运行时才
能确定的,譬如上述编译时不能确定表达式的值一样,
解决方案 »
- 一样的代码,为什么单独一个对话框程序可以用,将对话框编写成ocx控件的程序就不能用。。
- 如何把Word文档转为chm帮助文档
- 自绘ComboBox下拉条自动隐藏的问题
- 请给位高手帮忙一个有关VC,数据库,和通讯机制的问题
- 怎么调用excel 保存成html????
- 标准库错误error LNK2019: unresolved external symbol
- 请高手指点
- 各位高手,小弟遇一问题,如何才能控制系统静音,即设置成静音和取消静音。
- 那里有下载“深入浅出mfc“的sample?
- SetCapture和SetFocus的区别是什么,都用在什么地方?
- VC程序力如何执行另外的VC程序啊?
- 我要添加一个类似excel的控件,有吗?那位能给出,谢谢!
除非你new出来
只是知道int iarray2 [size2]; 这样写肯定编译通不过今天来听讲座
up
而int size2 = 10;是一个变量,编译器会给他分配一个四个字节的空间,值赋为10,下次使用时把这个空间里的值拿过来用,int iarray2 [size2];编译器不能确定数组的大小所以不能通过。
强烈推荐microsoft的“三重思想”:
重试--功能出错后
重装--程序出错后
重编--以上二重无法搞定时^_^
重试--功能出错后
重装--程序出错后
重编--以上二重无法搞定时///////////////////////////////////
感谢 CaptainIII(山上人)所开的讲座学习up
int iarray2 [size2]; // error,编译时不能确定
1 可以通过,是因为size是常量,可以在编译直接作为数组的大小使用
2 不可以编译通过,是因为size2是变量,编译时不能确定具体数据,只能在连接的时候确定。
重试--功能出错后
重装--程序出错后
重编--以上二重无法搞定时:)
int i;
cin >> i;
int array[i];
cout << sizeof(array) << endl;
不相, 你可以试试的. (用的是Dev - C++ 4.9.7.0)
:)
强,稳定从来不是问题,难道你写的程序就一个bug也没有?
像你这个程序,只要
vector<int> vecINT;
vecINT.push_back(0);
...
根本不用关心数组有多大,只要你的内存足够,那么,有多少int你都可以push_back进去而不用担心会有什么内存问题,溢出问题等等。