私はこのコードを持っています:
#define N 100 //starting size of the array
int is_full(VERTEX *arr);
int add_vertex(char *name);
int print_degree(int ID);
int _get_vertex(int ID);
VERTEX *resize_array(VERTEX *vertex_array,int new_size);
VERTEX *arr = (VERTEX*)calloc(N, sizeof(VERTEX)); // dynamic allocation and initialization to NULL\0
int main(void)
{
int vertex_counter = 0 ;
int starting_size_of_array = sizeof(VERTEX)*N;
}
エラーが表示されます: エラー C2099: 初期化子は定数ではありません
この配列にどこからでもアクセスできるように、VERTEX 配列をグローバルにしたいのです。では、なぜ一定ではないのでしょうか。N は #define の下にあり、VERTEX は .h ファイルに宣言されています。