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

Количество строк в файле - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Задача из Bjarne Stroustrup (Глава 12,7 №2)Графическая линия в консоли(в стиле ASCII) http://www.cyberforum.ru/cpp-beginners/thread639492.html
Глава 12,7 №2. Implement a simple graphics system using whatever graphics facilities are available on your system (if you don’t have a good graphics system or have no experience with one, you might consider a simple ‘‘huge bit ASCII implementation’’ where a point is a character position and you write by placing a suitable character, such as * in a position): Window (n,m) creates an area of size...
C++ КАК запоминать функции? их много и не запоминаются( http://www.cyberforum.ru/cpp-beginners/thread639485.html
sizeof массива C++
void f(float x) { printf("%d\n",sizeof(x)); // Пишет 4 байта (размер элемента массива) } void f2(float x) { printf("%d\n",sizeof(x)); // Почему пишет 4 байта, хотя в заголовке указан размер массива? } int main(int argc, char *argv, char *env) { float Arr={1,2,3,4,5,6,7,8};
C++ Создание простой многопоточной программы
Здравствуйте спецы. Никак не могу разобраться с многопоточностью. Помогите на простом примере разобраться с этим. Требуется написать программу, состоящую из двух потоков. В первом потоке выполняется бесконечный цикл, а во втором - выводятся числа от 1 до 100 с задержкой в 1 секунду в элемент Label. Думаю программа очень простая, но она поможет мне разобраться со многим. Если я не...
C++ Замедление действия http://www.cyberforum.ru/cpp-beginners/thread639433.html
Как мне добиться эффекта плавного появления текста? Может можно как нибудь замедлить операцию cout???
C++ Заполнить квадратную матрицу размером N x N по спирали Заполнить квадратную матрицу размером N x N по спирали (N – нечётное число). Число 1 ставится в центр матрицы, а затем массив заполняется по спирали против часовой стрелки значениями по возрастанию. Например, если размер N = 5, то в конце должно выглядеть так: 25 24 23 22 21 10 9 8 7 20 11 2 1 6 19 12 3 4 5 18 13 14 15 16 17 подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
18.08.2012, 23:10     Количество строк в файле
Возможный вариант чтения в стиле Си
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
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
int main()
{
    FILE * file = NULL;
    char * line = NULL;//ÓêГ*Г§Г*òåëü Г*Г* ГІГҐГЄГіГ№ГіГѕ ñòðîêó ГЁГ§ ГґГ*éëГ*
    char * text = NULL;//ÓêГ*Г§Г*òåëü Г*Г* ГІГҐГЄГ±ГІ ГґГ*éëГ*
    long fLen  = 0;
    int nLines = 1;//ÄóìГ*Гѕ ГїГ±Г*Г® Г·ГІГ® ГЅГІГ* ïåðåìåГ*Г*Г*Гї áóäåò õðГ*Г*ГЁГІГј
    file = fopen("input.txt","rb");
    if(!file)
        printf("Error open input.txt\n");
    else
    {
        fseek(file,0,SEEK_END);//Êóðñîð ГўГЄГ®Г*ГҐГ¶
        fLen = ftell(file);//ÓçГ*Г*ВёГ¬ äëèГ*Г*Гі ГґГ*éëГ*
        fseek(file,0,SEEK_SET);//Êóðñîð ГўГ*Г*Г·Г*ëî
        if(!fLen)
            printf("File has zero length\n");
        else
        {
            //³äåëÿåì ГЇГ*ìÿòü ïîä ГІГҐГЄГ±ГІ Гў ГґГ*éëå
            text = (char *)malloc((1 + fLen)*sizeof(char));
            if(!text)
                printf("Allocation memory error\n");
            else
            if(!fread(text,1,fLen,file))//ÏûòГ*åìñÿ Г±Г·ГЁГІГ*ГІГј ГґГ*éë
                printf("Read file error\n");//Åñëè Г*ГЁГ·ГҐГЈГ® Г*ГҐ Г±Г·ГЁГІГ*ëè - èçâåùГ*ГҐГ¬
            else
            {
                text[fLen] = '\0';//Åñëè Г±Г·ГЁГІГ*ëè, îòñåèâГ*ГҐГ¬ ìóñîð
                line = strchr(text,'\n');//Èùåì ГЄГ®Г*öû ñòðîê - òîáèøü \n
                while(line)
                {
                    nLines = nLines + 1;
                    line = strchr(line + 1,'\n');
                }
                printf("Text in file : \n%s\n",text);
                printf("Num of lines : %d\n",nLines);
            }
            if(text)
                free((void *)text);
        }
        fclose(file);
    }
    return 0;
}
Миниатюры
Количество строк в файле  
 
Текущее время: 13:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru