Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Разное

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: C++ MFC CFile
 
 автор: Евгений Петров   (13.12.2005 в 23:41)   письмо автору
 
 

Здравствуйте!
Сталкнулся с такой проблемкой, вот есть код (на С++):

    CFile f;
    CFileException e;
    char * pFileName = "test.txt";
    f.Open(pFileName,CFile::modeRead,&e);
    char * pbuf = new char[f.GetLength()];
    f.Read(pbuf,f.GetLength());
    AfxMessageBox(pbuf);
    delete pbuf;

По идее все правильно (сверялся с MSDN) но помимо содержимого файла (у меня там англ алфавит) выводится ещё куча фигни всякой. Где я ошибся?
Спасибо!

   
 
 автор: cheops   (14.12.2005 в 01:35)   письмо автору
 
   для: Евгений Петров   (13.12.2005 в 23:41)
 

Скорее всего из-за того, что отсутствует нулевой символ (\0) в конце строки в файле. А AfxMessageBox() ищет именно его - когда не находит выходит за границы строки и выводит всё что находится за её пределами пока не повстречает \0.

   
 
 автор: Евгений Петров   (14.12.2005 в 13:09)   письмо автору
 
   для: cheops   (14.12.2005 в 01:35)
 

Спасибо.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования