SourceCount

Тема в разделе "WASM.HEAP", создана пользователем AntiB, 19 дек 2009.

  1. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    Доброе время суток!

    У меня была необходимость посчитать количество строк кода написанной мной в проекте, не зная или есть аналоги, написал маленькую программку которая ищет в директории (и поддиректории) все файлы *.c,*.cpp,*.h.

    Пример использование:
    Вариант #1: sc.exe c:\MyProg\
    Вариант #2: запускаем sc.exe и вводим путь к директории для поиска

    Зачем все это (гуано?) выложил сюда?! - может кому будет нужно, чтобы не писал эту программку. Даю с исходниками (можете дописывать что хотите)

    Что не умеет делать - искать количество строк в исходниках в unicode-формате (можно легко дописать).

    Прошу сильно не пинать!
     
  2. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    почему-то не приатачился файл.
     
  3. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    _hxxp://openfile.ru/477121/
     
  4. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    В Visual C++ есть макросы _FILE_, _NUMBER_ (?), которые выдают во время работы программы текущий исходный файл. Среди них есть и номер строки исходного кода.
     
  5. gEnIuS_99

    gEnIuS_99 New Member

    Публикаций:
    0
    Регистрация:
    3 дек 2009
    Сообщения:
    28
    Оч полезная прога!
     
  6. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    В unix можно так:
    wc `find . -name "*.c" -o -name "*.cpp" -o -name "*.h"`
     
  7. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    AndreyMust19
    Возможно есть, но когда у тебя пару прожектов или пару файлов - не охота считать количество строк.
    gEnIuS_99
    Спасибо!
    Booster
    в винде нельзя (или можно?)
     
  8. cppasm

    cppasm New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    923
    Можно если поставить MSYS от MinGW.
    Там есть wc.exe - порт под Windows.
    Так же как и grep, sed, awk и много чего ещё интересного есть :)
     
  9. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    порт wc слабо прокатит :)
    ибо афаик `` нет в винде.
     
  10. cppasm

    cppasm New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    923
    Прокатит, shell тоже портирован - bash.
    [​IMG]
     
  11. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    я не про msys, а про отдельные портированные приложения.
    Например юзаю grep, однако msys'a не стоит.
     
  12. cppasm

    cppasm New Member

    Публикаций:
    0
    Регистрация:
    18 июл 2006
    Сообщения:
    923
    Если без msys - можно попробовать с for() *.cmd написать.
     
  13. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    n0name
    >порт wc слабо прокатит :)
    >ибо афаик `` нет в винде.
    Но есть xargs.
    find . -name "*.c" -o -name "*.cpp" -o -name "*.h" | xargs wc
     
  14. asd

    asd New Member

    Публикаций:
    0
    Регистрация:
    12 мар 2005
    Сообщения:
    952
    Адрес:
    Russia
    http://msquaredtechnologies.com/m2rsm/ ?
     
  15. AntiB

    AntiB New Member

    Публикаций:
    0
    Регистрация:
    23 мар 2007
    Сообщения:
    393
    asd
    то что нужно. Хотя я уже буду пользоваться этой утилкой :)
     
  16. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    тру. Не знал про xargs, пойду качать.
     
  17. AndreyMust19

    AndreyMust19 New Member

    Публикаций:
    0
    Регистрация:
    20 окт 2008
    Сообщения:
    714
    Есть какая-то команда в cmd.exe, помимо основной работы выводит кол-во строк в файле.
     
  18. l_inc

    l_inc New Member

    Публикаций:
    0
    Регистрация:
    29 сен 2005
    Сообщения:
    2.566
    n0name
    Так это... зачем по-отдельности качать всё? Есть пакетик UnxUtils. В нём и find, и grep, и xargs, и ещё много всего полезного.
     
  19. t00x

    t00x New Member

    Публикаций:
    0
    Регистрация:
    15 фев 2007
    Сообщения:
    1.921
    Вот это кошерно!!!
    www.microsoft.com/downloads/details.aspx?FamilyID=890cd06b-abf8-4c25-91b2-f8d975cf8c07&displaylang=en