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

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

Восстановить пароль Регистрация
 
stratovarius
13 / 13 / 0
Регистрация: 12.07.2009
Сообщений: 114
26.03.2010, 12:28     Количество строк #1
Подскажите, пожалуйста, есть ли такая функция, которая возвращает количество строк в текстовом файле?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.03.2010, 12:28     Количество строк
Посмотрите здесь:

26. Подсчитать количество букв "А" в предложении и общее количество букв. В тексте несколько строк. C++
C++ Подсчитать количество букв "А" в предложении и общее количество букв. В тексте несколько строк.
C++ Рассчитать количество строк.
Подсчитать количество пучтых строк и количество строк,которые начинаются и оканчиваются на одну и ту же букву. C++
C++ Количество строк
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
26.03.2010, 12:33     Количество строк #2
C++
1
2
3
4
5
6
7
8
size_t strcount(const string& file)
{
    size_t count=0;
    std::ifstream ifs(file.c_str());
    while(std::getline(ifs, std::string temp))
        ++count;
    return count;
}
stratovarius
13 / 13 / 0
Регистрация: 12.07.2009
Сообщений: 114
26.03.2010, 12:37  [ТС]     Количество строк #3
Сам функцию и я бы сделал, мне интересно, есть ли какая-нить стандартная функция
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
26.03.2010, 12:47     Количество строк #4
Вроде бы нет, по крайней мере я не встречал. Если я не прав, меня поправят
stratovarius
13 / 13 / 0
Регистрация: 12.07.2009
Сообщений: 114
26.03.2010, 13:06  [ТС]     Количество строк #5
И ещё вопрос:
C++
1
2
for (i=0; file!=0; i++)
  fgets(string,15,file);
Почему, когда конец файла, из цикла не выходит?
Nameless One
Эксперт С++
 Аватар для Nameless One
5755 / 3404 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
26.03.2010, 13:30     Количество строк #6
Я лично не использую "файлы" С, но вроде бы конец файла проверяется так:
C++
1
2
for (i=0; !feof(file); i++)
  fgets(string,15,file);
Добавлено через 3 минуты
ЗЫ. В этом фрагменте можно убрать инициализацию и инкремент i
breate
 Аватар для breate
56 / 56 / 2
Регистрация: 23.10.2009
Сообщений: 250
26.03.2010, 13:39     Количество строк #7
Цитата Сообщение от Nameless One Посмотреть сообщение
Я лично не использую "файлы" С, но вроде бы конец файла проверяется так:
C++
1
2
for (i=0; !feof(file); i++)
  fgets(string,15,file);
Добавлено через 3 минуты
ЗЫ. В этом фрагменте можно убрать инициализацию и инкремент i
кстати да указатель на файл не умирает в конце файла и просто каретка стоит в ячейке со значением -1,если юзаешь потоки можно так:
C++
1
2
3
4
5
ifsream fin("filename");
while(!fin.eof())
{
fin.getline(...);
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.03.2010, 13:55     Количество строк
Еще ссылки по теме:

C++ Реализовать двумерный динамический треугольный массив. Количество строк и сами элементы вводит пользователь. Количество элементов в строке рассчитывае
C++ Найти количество символов всех строк файла и количество символов в определенной строке
C++ Подсчитать количество всех строк, а потом - количество слов в каждой строке

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

Или воспользуйтесь поиском по форуму:
stratovarius
13 / 13 / 0
Регистрация: 12.07.2009
Сообщений: 114
26.03.2010, 13:55  [ТС]     Количество строк #8
Цитата Сообщение от Nameless One Посмотреть сообщение
Я лично не использую "файлы" С, но вроде бы конец файла проверяется так:
C++
1
2
for (i=0; !feof(file); i++)
  fgets(string,15,file);
Добавлено через 3 минуты
ЗЫ. В этом фрагменте можно убрать инициализацию и инкремент i
точно) ну или юзать while
Yandex
Объявления
26.03.2010, 13:55     Количество строк
Ответ Создать тему
Опции темы

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