Мне нужно сделать 2D-массив, но проблема в том, что мне нужно использовать размер строки как размер массива. До сих пор я это делал, но я продолжаю получать ошибку "выражение должно иметь постоянное значение". Моя программа должна прочитать строку из txt-файла, а затем использовать длину строки/размер для размера 2D-массива. Например: я написал «привет» в txt-файле и его длина равна 5. Теперь мне нужно использовать эту длину и сохранить ее как переменную N и использовать ее как измерение для 2D-массива. Как это сделать, ребята для этого примера?Как назначить ненулевое значение размеру 2D-массива в C++?
int main()
{
string s;
ifstream myfile("palindrome.txt", ios::out); //reading my txt file
if (myfile.is_open())
{
getline(myfile, s); //storing string in variable s
}
myfile.close();
int l = s.size(); //reading size of string and storing to variable l
const int N = l;
int* R= new int[2][N + 1];
Какое сообщение об ошибке? – Phorce
Ошибка \t C2540 \t непостоянное выражение как связанное с массивом – darius
Если вы хотите выделить память для массива массива с одним новым, второй размер должен быть постоянным. В вашем случае я думаю, что вы должны объявить массив (или вектор) строк. –