Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > C++ > C++ Builder
Регистрация

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


Ответ
 
Опции темы
Старый 25.04.2011, 08:28   #1
tiger()
Пользователь
 
Регистрация: 09.04.2011
Сообщений: 49
По умолчанию заморочки функций fseek и fwrite

Здравствуйте.

Цель - перезаписать последний байт файла на любой другой (к примеру 0х55). В дальнейшем - другие байты.

Делаю так:

unsigned long x;
GetFileSize(myFile, &x);
x = x - 1;
buffer = 0x55;
fseek(myFile, x, SEEK_SET);
fwrite(&buffer, 1, 1, myFile);

В результате почти весь файл с какого-то момента забивается нулями, а в конце стоит 0х55.

Подскажите, почему такое может происходить?
tiger() вне форума Ответить с цитированием
Старый 25.04.2011, 09:50   #2
onewho
Форумчанин
 
Регистрация: 29.09.2010
Сообщений: 636
По умолчанию

Цитата:
Сообщение от tiger() Посмотреть сообщение
Здравствуйте.

Цель - перезаписать последний байт файла на любой другой (к примеру 0х55). В дальнейшем - другие байты.

Делаю так:

unsigned long x;
GetFileSize(myFile, &x);
x = x - 1;
buffer = 0x55;
fseek(myFile, x, SEEK_SET);
fwrite(&buffer, 1, 1, myFile);
зачем так сложно?
Код:
	fseek(fp,-1,SEEK_END);
	fputc(0x55,fp);
вот же.

Последний раз редактировалось onewho; 25.04.2011 в 09:52.
onewho вне форума Ответить с цитированием
Старый 25.04.2011, 13:31   #3
tiger()
Пользователь
 
Регистрация: 09.04.2011
Сообщений: 49
По умолчанию

Цитата:
Сообщение от onewho Посмотреть сообщение
зачем так сложно?
Код:
	fseek(fp,-1,SEEK_END);
	fputc(0x55,fp);
вот же.
действительно.
не знал что можно отрицательное смещение ставить.
большое спасибо!!!
tiger() вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функций (Си) Stilet Помощь студентам 8 30.03.2011 17:55
Табулирование функций. Dog Помощь студентам 1 27.09.2009 21:25
fseek вместо дополнительного массива (язык Си) velvetdust Помощь студентам 3 25.06.2009 21:32
Построение графиков функций С++ (методы аппроксимации функций) amdbodia Общие вопросы C/C++ 0 24.05.2009 15:28
использование функций в качестве параметров других функций mono Помощь студентам 0 20.04.2009 18:25