Quindi stavo parlando con il mio amico, aiutandola con un pezzo di codice, e ho sempre pensato che gli array dovessero essere costanti in fase di compilazione, dato che sono in pila. Ma lei ha detto che la sua amica ha fatto questo usando questo codice:Array con una dimensione determinata in fase di esecuzione, è valido in C++?
#include <iostream.h>
#include <stdlib.h>
int main()
{
int value = ' ' ;
int sum = 0;
int count = 0;
cout<<"Please enter the total number of employees" <<endl;;
cin>> value;
int numbers[value];
cout<<"Now enter the employees corresponding salaries" <<endl;;
for (int k = 0; k < value; k++)
{
cin >> numbers[k];
}
}
Stanno usando Dev-C++.
È possibile che questo codice funzioni? Presumo di no.
possibile duplicato di [C'è un modo per rendere globale una matrice di lunghezza variabile in C++?] (Http://stackoverflow.com/questions/3903232/is-there-any-way-to-make-a-variable -length-array-global-in-c) –
C'è qualche ragione per cui sta inizializzando 'value' a' '' '? Il compilatore non si preoccuperà (lanci il '' ''char al suo valore ASCII,' 32'), ma 32 sembra un numero casuale e dispari per inizializzare un int a. –
Non sono programmatori, solo universitari generici. Non potrei dirti perché ha scelto '', \ n sarebbe andato bene. – jValdron