INFO: C2466 Error When Allocating an Array of Length 0Last reviewed: September 4, 1997Article ID: Q87015 |
The information in this article applies to:
SUMMARYWhen you use Microsoft C/C++, the constant expression that you use to allocate or declare an array must be an integral type greater than zero. If not, the following error will occur:
C2466: Cannot allocate an array of constant size 0The following examples are some ways this error can occur:
int *p = new X[0]; // error C *aC = new [int_var] C; // error int a[0]; // error int func(char *[0]); // errorNOTE: This does not apply to Visual C++, 32-bit Edition, version 2.0 and later. If you use the Microsoft extensions (/Ze), an array declaration with a zero subscript is legal for a class, structure, or union member. For more information about valid zero-sized arrays, search the Visual C++ online documentation for the topic "Unsized Arrays."
|
Additional query words: 8.00 8.00c 9.00 9.10
© 1998 Microsoft Corporation. All rights reserved. Terms of Use. |