所以我正在和我的朋友談話,幫她寫了一段代碼,我一直認爲數組需要是編譯時常量,因爲它們在堆棧中。但是她說她的朋友用這個代碼做了這個:在運行時確定大小的數組是否在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];
}
}
他們正在使用Dev-C++。
此代碼是否可以正常工作?我不假設。
可能重複[有沒有辦法在C++中創建一個可變長度的數組全局?](http://stackoverflow.com/questions/3903232/is-there-any-way-to-make-a-variable -length-array-global-in-c) –
是否有任何理由將她的'value'初始化爲''''?編譯器不會在意(它會將''''char轉換爲它的ASCII值,'32'),但32似乎是一個奇數,隨機數來初始化一個int。 –
他們不是編碼員,只是普通的大學生。我無法告訴你爲什麼她選擇',\ n會很好。 – jValdron