я додумался, как определить кол-во элементов в строке. Столкнулся с такой проблемой:
при объявлении массива weather[NR][NC] компилятор сообщает об ошибке, т.к. не может разместить в памяти массив с нулевой размерностью.
вот код, подскажите пожалуйста, если это возможно, как мне все таки создать массив, а только после какого-то момента задать ему размерность
Код:
![Выделить весь код](images/misc/selectcode.png)
#include <iostream>
#include <fstream>
#include "rus8.h"
#include "conio.h"
using namespace std;
int main() {
rus();
#define NR 7
#define NC *c
char str[100], ch;
int i=0,n=0, r, c;
float weather[NR][NC];
ifstream in("weather");
if(!in)
{
cout << "Не удалось открыть файл";
getch();
return 1;
}
in.get(str, 99);
cout << str <<'\n';
in.close();
for(n=0;str[n];n++)
{
if(str[n] == ' ')
{
i++;
cout << "Найден пробельный символ\n";
}
cout << "Символ не является пробелом \n";
}
c=i+1;
cout << "\n Всего символов " << n << " Из них пробельных " << i;
cout << "\n для завершения нажминие Ввод";
getch();
return 0;
}
вот такие ошибки MVS выдает на
Код:
![Выделить весь код](images/misc/selectcode.png)
float weather[NR][NC];
main.cpp(15) : error C2100: недопустимое косвенное обращение
main.cpp(15) : error C2057: требуется константное выражение
main.cpp(15) : error C2466: невозможно выделить память для массива постоянного нулевого размера
main.cpp(15) : error C2087: weather: отсутствует индекс