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

fscanf и \n - C++

Восстановить пароль Регистрация
 
F I G H T E R
11 / 1 / 1
Регистрация: 21.01.2013
Сообщений: 26
13.11.2013, 01:15     fscanf и \n #1
Есть текстовый файл содержащий строки с пробелами. Необходимо считать строку с пробелами так, что бы в переменной s не хранился символ \n, и чтоб указатель файла перешёл на новую строку (при считывании следующей строки \n не считывается в переменную s). Проблема состоит в том, что бы реализовать это именно при помощи функции fscanf в одну строку.
Примеры:
Кликните здесь для просмотра всего текста
C++
1
2
fscanf(f, "%[^\n]s\n", s); // Не считывает \n
fscanf(f, "%[^\n]s%*с", s); // Не считывает \n
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2013, 01:15     fscanf и \n
Посмотрите здесь:

Аналог функции fscanf (C++) C++
fscanf и max значение C++
C++ fscanf %s
Не работает fscanf C++
C++ Функция fscanf
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6542 / 3962 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
13.11.2013, 01:42     fscanf и \n #2
Цитата Сообщение от F I G H T E R Посмотреть сообщение
fscanf(f, "%[^\n]s\n", s); // Не считывает \n
почему бы просто не сожрать \n fgetc-ом ?
F I G H T E R
11 / 1 / 1
Регистрация: 21.01.2013
Сообщений: 26
13.11.2013, 01:54  [ТС]     fscanf и \n #3
Весь интерес состоит в том, что бы использовать 1 функцию. Хотелось бы узнать все возможности fscanf.
Donet
 Аватар для Donet
21 / 21 / 2
Регистрация: 19.11.2013
Сообщений: 74
25.12.2013, 19:53     fscanf и \n #4
Вот тебе в одну строчку. Читает вместе с пробелами и '\n'
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main()
{
    char str[100];
        FILE* f=fopen("d:\Flights.txt","rt");
    for(int i=0;(str[i]=getc(f))!='\n';i++, str[i+1]='\0');
    cout << str;
    cout << "sdf";
    getch();
}
Yandex
Объявления
25.12.2013, 19:53     fscanf и \n
Ответ Создать тему
Опции темы

Текущее время: 03:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru