Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: заполнение массива
Показать сообщение отдельно

Новый участник


Сообщения: 33
Благодарности: 12

Профиль | Отправить PM | Цитировать


я додумался, как определить кол-во элементов в строке. Столкнулся с такой проблемой:
при объявлении массива weather[NR][NC] компилятор сообщает об ошибке, т.к. не может разместить в памяти массив с нулевой размерностью.

вот код, подскажите пожалуйста, если это возможно, как мне все таки создать массив, а только после какого-то момента задать ему размерность

Код: Выделить весь код
#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 выдает на
Код: Выделить весь код
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: отсутствует индекс

Последний раз редактировалось Lisiy_egik, 15-11-2009 в 23:31. Причина: опечатка


Отправлено: 23:24, 15-11-2009 | #11

Название темы: заполнение массива