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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
4classic4
0 / 0 / 0
Регистрация: 23.01.2014
Сообщений: 21
#1

Как правильно переместить позицию в потоке? - C++

09.03.2014, 15:28. Просмотров 263. Ответов 3
Метки нет (Все метки)

Почему выводится на консоль 52, а не цифра 4?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <stdio.h>
using namespace std;
void main () {
setlocale(LC_ALL, "Russian");
#pragma warning(disable : 4996);
FILE *in=fopen("input.txt","rb");
for(int j=0; j<10; j++) for(int i=1; i<=9; i++) fprintf(in, "%d",i);
fseek(in, 3*sizeof(int), SEEK_SET);
cout<<fgetc(in);
fclose(in);
system("pause");
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.03.2014, 15:28     Как правильно переместить позицию в потоке?
Посмотрите здесь:

C++ подскажите как вывести позицию элемента
C++ как переместить файлы из папки?
C++ подскажите как выполнить метод в потоке
C++ Как переместить курсор на кнопку?
C++ Не могу создать поток( Нужно чтобы функция запускается в потоке и работала там пока не закроем в потоке)
Как найти позицию вхождения строки? C++
Файлы. Как установить позицию в файле? C++
Массивы (циклическим сдвигом переместить найденный элемент на последнюю позицию) C++
C++ Как узнать текущую позицию в каталоге
C++ Переместить файловый указатель на позицию 220 байт от конца файла
Переместить максимум матрицы влево вверх на заданную позицию, переставляя строки и столбцы соответсвенно C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tulosba
:)
Эксперт С++
4391 / 3234 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
09.03.2014, 16:09     Как правильно переместить позицию в потоке? #2
Цитата Сообщение от 4classic4 Посмотреть сообщение
fprintf(in, "%d",i);
Зачем Вы пишите в файл для чтения?
4classic4
0 / 0 / 0
Регистрация: 23.01.2014
Сообщений: 21
09.03.2014, 16:13  [ТС]     Как правильно переместить позицию в потоке? #3
Цитата Сообщение от Tulosba Посмотреть сообщение
Зачем Вы пишите в файл для чтения?
Извините, старый код скопировал, я после изменил, но все равно...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <stdio.h>
using namespace std;
void main () {
setlocale(LC_ALL, "Russian");
#pragma warning(disable : 4996);
FILE *in=fopen("input.txt","w");
for(int j=0; j<10; j++) for(int i=1; i<=9; i++) fprintf(in, "%d",i);
fseek(in, 3*sizeof(int), SEEK_SET);
cout<<fgetc(in);
fclose(in);
system("pause");
}
Tulosba
:)
Эксперт С++
4391 / 3234 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
09.03.2014, 16:20     Как правильно переместить позицию в потоке? #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от 4classic4 Посмотреть сообщение
но все равно...
что надо сделать-то?
Цитата Сообщение от 4classic4 Посмотреть сообщение
fgetc(in);
fgetc возвращает int, поэтому и выводит код символа, а не сам символ.
Сделайте так:
C++
1
cout<< static_cast<char>(fgetc(in));
Yandex
Объявления
09.03.2014, 16:20     Как правильно переместить позицию в потоке?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru