Проблема с FileRead() - чтение из файла
Точнее, работает, все данные читаются не туда куда надо.
FileRead(somefile,&someMas,sizeof(Mas[0])*3);
Здесь someMas - это массив типа AnsiString из трех элементов.
Все ли здесь правильно? Не нужно ли переводить AnsiString в массив char (с пом. c_str())?
Цитата:
Originally posted by Hawker
У меня не работает функция FileRead().
Точнее, работает, все данные читаются не туда куда надо.
FileRead(somefile,&someMas,sizeof(Mas[0])*3);
Здесь someMas - это массив типа AnsiString из трех элементов.
Все ли здесь правильно? Не нужно ли переводить AnsiString в массив char (с пом. c_str())?
У меня не работает функция FileRead().
Точнее, работает, все данные читаются не туда куда надо.
FileRead(somefile,&someMas,sizeof(Mas[0])*3);
Здесь someMas - это массив типа AnsiString из трех элементов.
Все ли здесь правильно? Не нужно ли переводить AnsiString в массив char (с пом. c_str())?
Э-э-э батенька! Что есть AnsiString? Фактически класс работающий с динамической памятью типа char* переменной длинны которая по умолчанию неинициализирована. Тобишь память у тебя НЕ ВЫДЕЛЕНА!
Как же ты собираешься читать данные в неинициализированную область?
К тому же - переменная типа AnsiString есть указатель - и ты фактически описанной тобой функцией читаешь в МАССИВ УКАЗАТЕЛЕЙ типа AnsiString.
А чего тебе конкретно-то читать из файла в анси-стринги треба?