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

Вывести последнюю строку из файла - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ функция http://www.cyberforum.ru/cpp-beginners/thread636530.html
Люди скажите почему в 14 строке ошибка? #include<iostream> #include<iomanip> using std::cin; using std::cout; using std::endl; int main() { int x(0),y(0),z(0);
C++ Не срабатывает gets Ребят, не пойму почему, но строка с gets в ниже приведенном коде игнорируется - ввести мне ничего не дает: int ch; char str; do { cout << " ****** Welcome!!! ****** " << '\n'; cout << "(0) - exit" << '\n'; cout << "(1) - get strlen" << '\n'; http://www.cyberforum.ru/cpp-beginners/thread636520.html
Подключение других файлов C++
Я написал программу и кода получилось довольно много... Можно как нибудь его разбить на несколько кусков и каждый поместить в отдельный файл?
C++ Как поместить элемент в массив используя (индекс и значение) определенной размерности?
Всем привет. Мне нужно в массив определенной размерности поместить элемент, вводля сперва индекс, а потом само значение. Все это нужно в определенной функции сделать. чтобы было типо: safearay sa1; // описываем массив int temp = 12345; // описываем целое sa1.putel(7, temp); // помещаем значение в массив с определенным индексом
C++ `endl' undeclared (first use in this function) http://www.cyberforum.ru/cpp-beginners/thread636482.html
#include <stdio.h> #include <iostream.h> #include <conio.h> #include <math.h> void main() { double (*pf)(double x); //îáúÿâëåíèå óêàçàòåëÿ íà ôóíêöèþ double x=0.2; pf=sin; //ïðèñâîåíèå çíà÷åíèÿ óêàçàòåëþ cout<<"sin(0.2)="<< pf(x) <<endl; //îáðàùåíèå ïî óêàçàòåëþ
C++ Массив #include <iostream> using namespace std; int main() { unsigned const int max = 5; char a = {"a", "b"}; //ERROR for (int i = 0; i<max; i++) подробнее

Показать сообщение отдельно
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
13.08.2012, 20:19     Вывести последнюю строку из файла
Цитата Сообщение от Пaтрик Посмотреть сообщение
в деструкторе.
В каком месте кода?

Добавлено через 15 минут
Деструктор объекта inClientFile сработает при выходе из функции last_line(). Деструктор объекта outClientFile сработает при выходе из функции main(). Поэтому, прежде чем пдключать файл к другому потоку (inClientFile), нужно отключить его от outClientFile.

Добавлено через 18 минут
void last_line(const string filename)
И где filename в функции?

Добавлено через 1 час 12 минут
Чтобы убедиться, что так нужно делать:
C++
1
outClientFile.close();
, проведите простой эксперимент. В вашем рабочем коде, из этой строки
C++
1
outClientFile << str << endl;
, уберите endl (или напишите так:
C++
1
outClientFile << str << '\n';
) и код перестанет работать. Из файла будут выводиться старые данные. Когда начнёт работать функция last_line(), введённые данные будут находиться ещё в буфере потока. Новые введённые данные будут записаны в файл, только при выходе из main(). Тут проблема связана с очисткой буфера потока, что происходит и при endl, и при outClientFile.close();. Можно, так же, применить:
C++
1
outClientFile.flush();
 
Текущее время: 14:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru