CSDN论坛 > VC/MFC > 界面

有关定义数组大小 [问题点数:20分,结帖人littleline]

Bbs3
本版专家分:569
结帖率 96.97%
CSDN今日推荐
Bbs1
本版专家分:15
Bbs5
本版专家分:4162
Bbs6
本版专家分:5541
Bbs3
本版专家分:569
匿名用户不能发表回复!
其他相关推荐
为什么用const说明的常量不能用来定义一个数组的初始大小?
并不是所有的常量都可以用来定义一个数组的初始大小,在C程序中,只有C语言的常量表达式才能用来定义一个数组的初始大小。然而,在C++中,情况有所不同。     一个常量表达式的值在程序运行期间是不变的,并且是编译程序能计算出来的一个值。在定义数组的大小时,你必须使用常量表达式,例如,你可以使用数字:     char    a[512]; 或者使用一个预定义的常量标识符:     #de
VS2013 c++ 常量定义数组大小报错
今天有个函数需要通过传参来确定数组大小,于是写了如下代码测试#include #include using namespace std; void func(const vector &a) { const int c =a.size(); float b[c]; cout<<__func__<<" "<<c<<endl; } int main() { vector p;
你不知道的c语言之为什么数组的大小不能是变量
你不知道的c语言之为什么数组的大小不能是变量 不知道是编译器是这样实现数组的还是c语言是这样规定数组的 有如下代码   反汇编代码如下   我们从上面的反汇编代码可看到编译器会把int a=3,编译为 mov dword ptr[ebp-4],3虽然变量a 的值是3(这只是你认为的,其实程序不运行它的值是未知的vc6.0下为0),但在编译期间编译器为变量a分配的栈空间dword ptr
可变大小数组
在定义数组的时候通常要先确定数组的大小,但是在实际运用当中,我们往往不知道我们要用到的这个数组到底要多大,所以需要用到可变大的数组。//声明数组结构体 typedef struct { int *array; int size; }Array;//创建一个长度为init_size的数组 Array array_create(int init_size) { Array a
C++中定义一个数组一定要给出长度吗?
静态数组是要指定大小的。你需要的是动态数组 例: //定义一个动态数组array int *array; // 运行中知道其大小为num, 此时再为其分配内存 array = new int[num]; // 然后可以像静态数组一样使用 array[0] = 1; array[100]=300; // 最后释放内存 delete[] array;
vb 如何定义一个未知大小一维数组?
vb 如何定义一个未知大小一维数组? 2012-12-09 10:33 酷依航 | 分类:VB | 浏览1941次我是这样定义 dim a(100) as string,但是经常性出现下标越界,又不想定义的范围太大,就想问下可不可以定义一个自适应的一维数组? 删除问题 举报违规检举侵权投诉|2012-12-09 10:51 提问者采纳 可以的,先定义一个动态
关于定义数组时必须指定长度
C语言规定数组长度在编译时必须有明确的值,即必须在数组定义时指定数组的长度;指定数组长度的常量表达式只能是整型字面常量或符号常量。int A[10]; //正确int[] A; //错误,C语言不允许这样方式定义int m=10,F[m]; //错误,长度是变量而在java、C#中,与C语言中的这种数组定义形式完全不同。在C#中,数组定义格式:int[] a=new int[10];  //正确i...
形参定义成指定大小的数组
今天在百度知道上看见一个问题。 类似 char *func( char str[10]) {        printf(“len= %d\n”, sizeof(str)); } int main() {        charstr[100] = “there is a problem”; func(str); }   首先对func函数了解,形参为char str[10],
C++使用变量作为数组长度
C++中一般是不能使用变量作为一个数组的长度的,必须使用常量。 这是因为数组作为C++的内置数据类型,其空间分配在栈内存中,这部分空间的大小在编译时就要确定,不能等到运行时再分配。常量的值在编译时就能得到,而变量的值在运行时才能确定。 但是仍然有办法使用变量作为数组的长度:绕过栈内存,将数组空间开辟在堆空间内:int *d = new int[n];这样这块内存就是自己开辟的了,可以使用变量初始
c#面试2(选择题)
31、针对下面的C#代码:                using System;                delegate void D(int i);                class P{                  public static void Main(){                     V(new D(R)); new D(P.R)
关闭