#c#
#c#
Вопрос:
Я использую c # для сравнения двух файлов.c и я могу выяснить, отличаются они или нет, но я ищу способ подсчитать количество функций (методов), которые были добавлены, удалены или изменены в этих файлах.c
Вот мой код до сих пор
private bool FileCompare(string file1, string file2)
{
int file1byte;
int file2byte;
FileStream fs1;
FileStream fs2;
// Determine if the same file was referenced two times.
if (file1 == file2)
{
// Return true to indicate that the files are the same.
return true;
}
// Open the two files.
fs1 = new FileStream(file1, FileMode.Open, FileAccess.Read);
fs2 = new FileStream(file2, FileMode.Open, FileAccess.Read);
// Check the file sizes. If they are not the same, the files
// are not the same.
if (fs1.Length != fs2.Length)
{
// Close the file
fs1.Close();
fs2.Close();
// Return false to indicate files are different
return false;
}
у кого-нибудь есть какие-либо предложения?
спасибо за помощь.
Комментарии:
1. итак, вы хотите, чтобы мы написали для вас
C
анализатор?2. @Selman22 — или предложите
C
анализатор3. Что-нибудь полезное в ответе (ответах)?
Ответ №1:
Прежде всего: У вас ужасная орфография и грамматика!
Вы можете написать собственный анализатор C или использовать существующий, который предоставляет вам необходимую информацию.
Проверьте этот инструмент: cpp-ripper:
Целью проекта C Ripper является создание простой и повторно используемой платформы синтаксического анализа, специализированной для кода на C и C . Анализатор C Ripper — это анализатор рекурсивного спуска, который использует перегрузку операторов, чтобы разрешить выражение грамматик с использованием обозначения, похожего на PEGs.
Я разрабатываю C Ripper, чтобы сформировать основу для инструментов, которые анализируют документацию на C , выполняют красивую печать и которые могут быть использованы для рефакторинга кода. Это должно быть легко адаптировано для других целей и других языков.
Вы можете получить его исходный код здесь.
Если он не предоставляет вам всей необходимой информации, прочитайте исходные тексты, которые вдохновят вас на написание собственного синтаксического анализатора / фреймворка.