Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.11.2010, 15:42   #1
c++ learner
Пользователь
 
Регистрация: 19.12.2008
Сообщений: 38
Вопрос error C2100: illegal indirection

вот собственно код.
Цитата:
bool configurationFile::setParameter ( char *parameterName, char *value )
{
*fs->write( (char*) parameterName, (streamsize) strlen(parameterName));
return true;
}
пишет .... error C2100: illegal indirection

как write скормить первый параметр? что я только не писал и (const char*) и вообще без приведения типа. все одно illegal indirection ((
"...в самом начале было слово.." т.е. 16-битное битовое поле.
c++ learner вне форума Ответить с цитированием
Старый 09.11.2010, 15:52   #2
admin
Заблокирован
 
Регистрация: 09.11.2010
Сообщений: 0
По умолчанию

Какой компилятор? может компилятор глючит?
admin вне форума Ответить с цитированием
Старый 09.11.2010, 16:45   #3
pproger
C++ hater
СтарожилДжуниор
 
Аватар для pproger
 
Регистрация: 19.07.2009
Сообщений: 3,333
По умолчанию

2c++ learner
ну во первых, нафига приводить к char *, если твоя переменная и так такого типа
во вторых,

Код:
*fs->
что то разыменовал и обращаешься как к указателю? изначально у тебя что было? указатель на указатель? или обычный указатель? или объект на стеке и перегруженный оператор ->

так или иначе, должно быть либо f-> (если f указатель либо объект на стеке с перегруженной операцией ->), либю (*f)-> (если f - указатель на указатель), либо (*f). (если f - обычный указатель).

2admin
Цитата:
Какой компилятор? может компилятор глючит?
стандартный ответ человека, не разбирающегося в предмете разговора
I invented the term Object-Oriented, and I can tell you I did not have C++ in mind. (c)Alan Kay

My other car is cdr.

Q: Whats the object-oriented way to become wealthy?
A: Inheritance

Последний раз редактировалось pproger; 09.11.2010 в 16:48.
pproger вне форума Ответить с цитированием
Старый 09.11.2010, 17:48   #4
c++ learner
Пользователь
 
Регистрация: 19.12.2008
Сообщений: 38
По умолчанию

2pproger
Спасибо, бревна не заметил))
Действительно и нафига?)) Проблема была не в первой переменной и ее приведением, а с *fs-> – накосячил я, жесточайшим образом тут, каюсь )))
Прога теперь компилоцо!)) …но есть теперь другая проблема я не вижу файла, который она должна создать(( , она же его должна создать в Дебаг папке хотя бы нет?

Компилилка: ms vc - - 2003й.

По-моему тот все норм нет?

Код:
bool configurationFile :: open(char *FileName ) 
{
	if (fs) 
		close();

	if (fs = new fstream(FileName, ios :: in | ios:: out | ios::binary))
		return true;
	else
		return false;
};
Может еще какой ios::$$ задасть, м? чеб файл создавала?

****add-on

Подебажил код кнопками f10/f11 в коде fstream в надежде отыскать причину по которой fstream отказывается создать файл с записью … выяснилось что он в своей основе используют fopen/fclose/fwrite/fread… перешел на них. Теперь файл создается!
Вложения
Тип файла: rar io-basics-01.rar (69.0 Кб, 7 просмотров)
"...в самом начале было слово.." т.е. 16-битное битовое поле.

Последний раз редактировалось c++ learner; 09.11.2010 в 19:06. Причина: время
c++ learner вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ошибка error C2043: illegal break Ongi Общие вопросы C/C++ 7 04.01.2012 20:55
Illegal Instruction russian-stalker Общие вопросы C/C++ 2 04.11.2010 10:04
ERROR:Illegal indexing mode IgorKr Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 13.12.2008 23:54
Ошибка(C++): error C2041: illegal digit '9' for base '8' TheWanderer Общие вопросы C/C++ 4 02.10.2008 21:11