С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Работа с файлом - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Цвет собственных типов переменных в C++ http://www.cyberforum.ru/cpp-beginners/thread43284.html
Здрасте! Что необходимо сделать, чтобы собственные типы переменных в окне "Код" отображался синим цветом, а не чёрным? Вот, к примеру, объявление собственных переменных в файле MyVars.h: //...
C++ Индексированные списки Разъясните кто может подробнее или может у кого есть материал по таким спискам. Знаю обычные связанные списки, но что такое индексные ток предполагаю. Написано что они повышают производительность при... http://www.cyberforum.ru/cpp-beginners/thread43281.html
CXX0030 что делать? C++
Столкнулся с проблемой, не хотят создаваться структуры в классе (именно в данном примере). Все вроде бы нормально написано, но поставив брейкпоинт на функцию insert, то на строчке NUMBER *z; в...
Рекурсивный спуск C++
нужно реализовать рекурсивный спуск буквально за час, буду оч признателен. Нужно найти ошибку в синтаксисе и помочь с семантикой, либо другой вариант. Итак, начал с синтаксиса, немного кривовато,...
C++ Как правильно инициализировать статические члены класса? http://www.cyberforum.ru/cpp-beginners/thread43235.html
Я новичок и заранее прошу прощение за тупые вопросы. Имеются два класса: Solution и Pool. Pool состоит из нескольких обьектов класса Solution. Эти обьекты отличаются только переменными *x и y. Все...
C++ битовые поля!! добрый вечер! имеется класс представления битовых полей: #ifndef HTBITFIELDS #define HTBITFIELDS #include <iostream> using namespace std; #include "Cmystring.h" подробнее

Показать сообщение отдельно
odip
Эксперт С++
7159 / 3221 / 59
Регистрация: 17.06.2009
Сообщений: 14,164
07.07.2009, 16:46
Вот программа. Демонстрационная версия обрабатывает до 10 строк в файле
А сколько стоит полнофункциональная версия ?

Добавлено через 15 минут 25 секунд
Я тоже решил сделать демо-версию

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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#include <stdio.h>
#include <stdlib.h>
 
#define MAX_LINE_SIZE   1024
#define DEMO_MAX_LINES  10
 
int chislo_strok( const char *infile );
void pechat_stroki( const char *infile, int line_num );
 
 
/* ============================================================ */
int main( int argc, char *argv[] ) {
        
int lines, i;
        
argc--;
argv++;
 
if ( argc != 1 ) { exit( 2 ); }
 
lines= chislo_strok( argv[0] );
/* printf( "lines=%d\n", lines ); */
#if defined(DEMO_MAX_LINES)
if ( lines>DEMO_MAX_LINES ) {
    fprintf( stderr, "Eto demo versija, ne bolee %d strok, oplata 45 WMZ !\n", DEMO_MAX_LINES );
    exit( 1 );
}
#endif
for ( i= lines-1; i>=0; i-- ) {
        pechat_stroki( argv[0], i );
}
 
exit( 0 );
 
} /* main() */
 
 
/* ============================================================ */
int chislo_strok( const char *infile ) {
 
FILE *fin= NULL;
int cur_line_num= 0;
 
char buf[MAX_LINE_SIZE];
 
 
fin= fopen( infile, "rt" );
if ( fin == NULL ) { fprintf( stderr, "Gde file ?\n" ); exit( 1 ); }
for ( ; ; ) {
        if ( fgets( buf, sizeof(buf), fin ) == NULL ) {
                if ( feof( fin ) ) { break; }
                fprintf( stderr, "Oshipka chtenija faila !\n" ); exit( 1 );
        }
        cur_line_num++;
}
fclose( fin ); fin= NULL;
 
return cur_line_num;
 
} /* chislo_strok() */
 
 
/* ============================================================ */
void pechat_stroki( const char *infile, int line_num ) {
 
FILE *fin= NULL;
int cur_line_num= 0;
 
char buf[MAX_LINE_SIZE];
 
 
fin= fopen( infile, "rt" );
if ( fin == NULL ) { fprintf( stderr, "Gde file ?\n" ); exit( 1 ); }
for ( ; ; ) {
        if ( fgets( buf, sizeof(buf), fin ) == NULL ) {
                if ( feof( fin ) ) { fprintf( stderr, "Neozhidanno popalsja konec !\n" ); exit( 1 ); }
                fprintf( stderr, "Oshipka chtenija faila !\n" ); exit( 1 );
        }
        if ( cur_line_num == line_num ) {
                printf( "%s", buf );
                break;
        }
        cur_line_num++;
}
fclose( fin ); fin= NULL;
 
} /* pechat_stroki() */
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.