Форум программистов, компьютерный форум CyberForum.ru

fseek как правильно использовать - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ функции для перевода из разных систем счисления http://www.cyberforum.ru/cpp-beginners/thread211981.html
подскажите функции для перевода из разных систем счисления Добавлено через 1 час 19 минут А такая вообще есть, и если нед то как можно её сделать
C++ Работа с массивом char Вот задание Вам дана непустая строка, состоящая из строчных латинских букв, цифр и пробелов. Длина строки не превышает 250 символов. Словом для данной строки называется наибольшая по включению подстрока, не содержащая пробелов. Ваша задача - удалить из строки все лишние пробелы так, чтобы два последовательных слова разделял ровно один пробельный символ. Лидирующих и концевых пробелов в строке... http://www.cyberforum.ru/cpp-beginners/thread211976.html
Чтение и запись из файла. C++
У меня есть программа: логарифмический калькулятор. В ней мне надо сохранять результаты в файл и производить чтение из него. Мне надо сделать так, чтобы история выполнения операций сохранялась. В данный момент, у меня каждый раз происходит очистка файла перед записью. И еще не получается записать результат результат функции exponentiation(); Исходный код прилагаю. Заголовочный файл log.h ...
C++ определить число соседств двух положительных чисел.
Нужно решить небольшую задачку на Си. Даны натуральное число n,действительные числа а1,...,an.В последовательности a1,...,an определить число соседств двух положительных чисел.
C++ Работа с массивами структур http://www.cyberforum.ru/cpp-beginners/thread211932.html
Помогите пожалуйста разработать программу , позволяющую добавлять данные структур с указанными полями в массив, просматривать массивы, а также выполнять дополнительную операцию в соответствии с индивидуальным заданием. Вот само задание - Поля структуры: код животного, название, количество еды в день (кг). Операция: найти название животного, которое ест больше всего.
C++ Указатели и функции. Динамическое выделение памяти 1) Напишите программу, которая позволяет вводить динамический одно-мерный целочисленный массив и посредством вызова функции опреде-лять минимальную сумму между двумя соседними элементами массива. При передаче массива в функцию используйте указатели, а размерность передавайте по ссылке. Применение глобальных переменных категориче-ски запрещено. 2) Напишите программу, позволяющую вводить... подробнее

Показать сообщение отдельно
sanchopa
8 / 8 / 0
Регистрация: 21.04.2010
Сообщений: 104
15.12.2010, 21:22     fseek как правильно использовать
хочу перевернуть все символы в документе без использования памяти (массива, вектора), да и размеры кода уменьшить.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#define _CRT_SECURE_NO_DEPRECATE // для подавления замечаний Майкрософт по поводу небезопасности функций fopen
 
#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <locale.h>
 
int main() {
 
    setlocale(LC_ALL, "Russian");
    
    printf("Введите имя файла: ");
    char s[200];
    scanf("%199s", s, 200);
 
    FILE *f1; // заводим указатель на структуру (блок памяти) со служебной информацией о файле
    f1 = fopen( s, "rt" ); // "открываем" файл с именем s на чтение (r) в текстовом режиме (t)
    // fopen возвращает указатель на созданную структуру с информацией о файле
    // если файл не "открылся", fopen возвращает NULL
    if( f1 == NULL ) {
        printf( "Не могу открыть %s на чтение.\n", s );
        return -1;
    }
 
    FILE *f2;
    f2 = fopen( "newfile.txt", "wb+" );
    if( f2 == NULL ) {
        printf( "Не могу открыть \"newfile.txt\" на запись.\n" );
        return -2;
    }
    
    printf("Обрабатывается %s...\n", s);
    int c;
    c = fgetc(f1); // считыаем первый символ    
    while( feof(f1)==0 )  
    {
        fseek(f2, 0, SEEK_SET);//ставим указатель в начало документа!!!!!!!
        fputc( c, f2 ); // записываем символ
        c = fgetc(f1);  // считыаем символ
    }
    
    _fcloseall();
    printf( "Готово. См. \"newfile.txt\".\n" );
    _getch();
}
C++
1
fseek(f2, 0, SEEK_SET);//ставим указатель в начало документа
- вот здесь проблема, почему стираются символы и записывается только последний

Добавлено через 51 минуту
upupup
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru