<commit_before>Test task
=====

Write a function to remove C and C++ comments from an input string while 
leaving all other data intact. 
For performance reasons, your function should not allocate memory, 
must handle even very long strings, and must be written in standard C.
When the function returns, str should have the same data as when it was
called, but with comments removed. If library calls are used, they must be 
present in the standard C library (both Microsoft and Unix).  
C-style comments can span multiple lines.

Example C comment:

/*
 * Comments start with /* and end with the opposite
 * (// is for C++ comments)
 */

Example C++ comment:

// Another comment, can only be one line

Function prototype:

void removeComments(char *str)

{

}
<commit_msg>added solution info in readme<commit_after>Test task
=========

Write a function to remove C and C++ comments from an input string while 
leaving all other data intact. 
For performance reasons, your function should not allocate memory, 
must handle even very long strings, and must be written in standard C.
When the function returns, str should have the same data as when it was
called, but with comments removed. If library calls are used, they must be 
present in the standard C library (both Microsoft and Unix).  
C-style comments can span multiple lines.

Example C comment:

/*
 * Comments start with /* and end with the opposite
 * (// is for C++ comments)
 */

Example C++ comment:

// Another comment, can only be one line

Function prototype:

void removeComments(char *str)

{

}


Solution and usage
--------
Solution is implemented for Visual Studio 2013 and located in files Task.h and Task.c. 
Unit tests are located in unittest1. To open and run the solution and all unit test, open TestApp.sln in Visual Studio 2013.
{'fraction_non_alphanumeric': 0.06692477876106195, 'fraction_numerical': 0.00497787610619469, 'mean_word_length': 3.824, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3414242', 'n_tokens_mistral': 478, 'n_tokens_neox': 460, 'n_words': 275}